feat(hos_client_create, hos_client_destory): 多次调用destory不会导致重复释放

This commit is contained in:
彭宣正
2020-12-14 17:24:58 +08:00
parent 505d529c32
commit 10b370e486
55976 changed files with 8544395 additions and 2 deletions

View File

@@ -0,0 +1,734 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
#include <aws/synthetics/SyntheticsErrors.h>
#include <aws/core/client/AWSError.h>
#include <aws/core/client/ClientConfiguration.h>
#include <aws/core/client/AWSClient.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/json/JsonSerializer.h>
#include <aws/synthetics/model/CreateCanaryResult.h>
#include <aws/synthetics/model/DeleteCanaryResult.h>
#include <aws/synthetics/model/DescribeCanariesResult.h>
#include <aws/synthetics/model/DescribeCanariesLastRunResult.h>
#include <aws/synthetics/model/DescribeRuntimeVersionsResult.h>
#include <aws/synthetics/model/GetCanaryResult.h>
#include <aws/synthetics/model/GetCanaryRunsResult.h>
#include <aws/synthetics/model/ListTagsForResourceResult.h>
#include <aws/synthetics/model/StartCanaryResult.h>
#include <aws/synthetics/model/StopCanaryResult.h>
#include <aws/synthetics/model/TagResourceResult.h>
#include <aws/synthetics/model/UntagResourceResult.h>
#include <aws/synthetics/model/UpdateCanaryResult.h>
#include <aws/core/client/AsyncCallerContext.h>
#include <aws/core/http/HttpTypes.h>
#include <future>
#include <functional>
namespace Aws
{
namespace Http
{
class HttpClient;
class HttpClientFactory;
} // namespace Http
namespace Utils
{
template< typename R, typename E> class Outcome;
namespace Threading
{
class Executor;
} // namespace Threading
} // namespace Utils
namespace Auth
{
class AWSCredentials;
class AWSCredentialsProvider;
} // namespace Auth
namespace Client
{
class RetryStrategy;
} // namespace Client
namespace Synthetics
{
namespace Model
{
class CreateCanaryRequest;
class DeleteCanaryRequest;
class DescribeCanariesRequest;
class DescribeCanariesLastRunRequest;
class DescribeRuntimeVersionsRequest;
class GetCanaryRequest;
class GetCanaryRunsRequest;
class ListTagsForResourceRequest;
class StartCanaryRequest;
class StopCanaryRequest;
class TagResourceRequest;
class UntagResourceRequest;
class UpdateCanaryRequest;
typedef Aws::Utils::Outcome<CreateCanaryResult, SyntheticsError> CreateCanaryOutcome;
typedef Aws::Utils::Outcome<DeleteCanaryResult, SyntheticsError> DeleteCanaryOutcome;
typedef Aws::Utils::Outcome<DescribeCanariesResult, SyntheticsError> DescribeCanariesOutcome;
typedef Aws::Utils::Outcome<DescribeCanariesLastRunResult, SyntheticsError> DescribeCanariesLastRunOutcome;
typedef Aws::Utils::Outcome<DescribeRuntimeVersionsResult, SyntheticsError> DescribeRuntimeVersionsOutcome;
typedef Aws::Utils::Outcome<GetCanaryResult, SyntheticsError> GetCanaryOutcome;
typedef Aws::Utils::Outcome<GetCanaryRunsResult, SyntheticsError> GetCanaryRunsOutcome;
typedef Aws::Utils::Outcome<ListTagsForResourceResult, SyntheticsError> ListTagsForResourceOutcome;
typedef Aws::Utils::Outcome<StartCanaryResult, SyntheticsError> StartCanaryOutcome;
typedef Aws::Utils::Outcome<StopCanaryResult, SyntheticsError> StopCanaryOutcome;
typedef Aws::Utils::Outcome<TagResourceResult, SyntheticsError> TagResourceOutcome;
typedef Aws::Utils::Outcome<UntagResourceResult, SyntheticsError> UntagResourceOutcome;
typedef Aws::Utils::Outcome<UpdateCanaryResult, SyntheticsError> UpdateCanaryOutcome;
typedef std::future<CreateCanaryOutcome> CreateCanaryOutcomeCallable;
typedef std::future<DeleteCanaryOutcome> DeleteCanaryOutcomeCallable;
typedef std::future<DescribeCanariesOutcome> DescribeCanariesOutcomeCallable;
typedef std::future<DescribeCanariesLastRunOutcome> DescribeCanariesLastRunOutcomeCallable;
typedef std::future<DescribeRuntimeVersionsOutcome> DescribeRuntimeVersionsOutcomeCallable;
typedef std::future<GetCanaryOutcome> GetCanaryOutcomeCallable;
typedef std::future<GetCanaryRunsOutcome> GetCanaryRunsOutcomeCallable;
typedef std::future<ListTagsForResourceOutcome> ListTagsForResourceOutcomeCallable;
typedef std::future<StartCanaryOutcome> StartCanaryOutcomeCallable;
typedef std::future<StopCanaryOutcome> StopCanaryOutcomeCallable;
typedef std::future<TagResourceOutcome> TagResourceOutcomeCallable;
typedef std::future<UntagResourceOutcome> UntagResourceOutcomeCallable;
typedef std::future<UpdateCanaryOutcome> UpdateCanaryOutcomeCallable;
} // namespace Model
class SyntheticsClient;
typedef std::function<void(const SyntheticsClient*, const Model::CreateCanaryRequest&, const Model::CreateCanaryOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > CreateCanaryResponseReceivedHandler;
typedef std::function<void(const SyntheticsClient*, const Model::DeleteCanaryRequest&, const Model::DeleteCanaryOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeleteCanaryResponseReceivedHandler;
typedef std::function<void(const SyntheticsClient*, const Model::DescribeCanariesRequest&, const Model::DescribeCanariesOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DescribeCanariesResponseReceivedHandler;
typedef std::function<void(const SyntheticsClient*, const Model::DescribeCanariesLastRunRequest&, const Model::DescribeCanariesLastRunOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DescribeCanariesLastRunResponseReceivedHandler;
typedef std::function<void(const SyntheticsClient*, const Model::DescribeRuntimeVersionsRequest&, const Model::DescribeRuntimeVersionsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DescribeRuntimeVersionsResponseReceivedHandler;
typedef std::function<void(const SyntheticsClient*, const Model::GetCanaryRequest&, const Model::GetCanaryOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetCanaryResponseReceivedHandler;
typedef std::function<void(const SyntheticsClient*, const Model::GetCanaryRunsRequest&, const Model::GetCanaryRunsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetCanaryRunsResponseReceivedHandler;
typedef std::function<void(const SyntheticsClient*, const Model::ListTagsForResourceRequest&, const Model::ListTagsForResourceOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListTagsForResourceResponseReceivedHandler;
typedef std::function<void(const SyntheticsClient*, const Model::StartCanaryRequest&, const Model::StartCanaryOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > StartCanaryResponseReceivedHandler;
typedef std::function<void(const SyntheticsClient*, const Model::StopCanaryRequest&, const Model::StopCanaryOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > StopCanaryResponseReceivedHandler;
typedef std::function<void(const SyntheticsClient*, const Model::TagResourceRequest&, const Model::TagResourceOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > TagResourceResponseReceivedHandler;
typedef std::function<void(const SyntheticsClient*, const Model::UntagResourceRequest&, const Model::UntagResourceOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > UntagResourceResponseReceivedHandler;
typedef std::function<void(const SyntheticsClient*, const Model::UpdateCanaryRequest&, const Model::UpdateCanaryOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > UpdateCanaryResponseReceivedHandler;
/**
* <fullname>Amazon CloudWatch Synthetics</fullname> <p>You can use Amazon
* CloudWatch Synthetics to continually monitor your services. You can create and
* manage <i>canaries</i>, which are modular, lightweight scripts that monitor your
* endpoints and APIs from the outside-in. You can set up your canaries to run 24
* hours a day, once per minute. The canaries help you check the availability and
* latency of your web services and troubleshoot anomalies by investigating load
* time data, screenshots of the UI, logs, and metrics. The canaries seamlessly
* integrate with CloudWatch ServiceLens to help you trace the causes of impacted
* nodes in your applications. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/ServiceLens.html">Using
* ServiceLens to Monitor the Health of Your Applications</a> in the <i>Amazon
* CloudWatch User Guide</i>.</p> <p>Before you create and manage canaries, be
* aware of the security considerations. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/servicelens_canaries_security.html">Security
* Considerations for Synthetics Canaries</a>.</p>
*/
class AWS_SYNTHETICS_API SyntheticsClient : public Aws::Client::AWSJsonClient
{
public:
typedef Aws::Client::AWSJsonClient BASECLASS;
/**
* Initializes client to use DefaultCredentialProviderChain, with default http client factory, and optional client config. If client config
* is not specified, it will be initialized to default values.
*/
SyntheticsClient(const Aws::Client::ClientConfiguration& clientConfiguration = Aws::Client::ClientConfiguration());
/**
* Initializes client to use SimpleAWSCredentialsProvider, with default http client factory, and optional client config. If client config
* is not specified, it will be initialized to default values.
*/
SyntheticsClient(const Aws::Auth::AWSCredentials& credentials, const Aws::Client::ClientConfiguration& clientConfiguration = Aws::Client::ClientConfiguration());
/**
* Initializes client to use specified credentials provider with specified client config. If http client factory is not supplied,
* the default http client factory will be used
*/
SyntheticsClient(const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
const Aws::Client::ClientConfiguration& clientConfiguration = Aws::Client::ClientConfiguration());
virtual ~SyntheticsClient();
/**
* <p>Creates a canary. Canaries are scripts that monitor your endpoints and APIs
* from the outside-in. Canaries help you check the availability and latency of
* your web services and troubleshoot anomalies by investigating load time data,
* screenshots of the UI, logs, and metrics. You can set up a canary to run
* continuously or just once. </p> <p>Do not use <code>CreateCanary</code> to
* modify an existing canary. Use <a
* href="https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_UpdateCanary.html">UpdateCanary</a>
* instead.</p> <p>To create canaries, you must have the
* <code>CloudWatchSyntheticsFullAccess</code> policy. If you are creating a new
* IAM role for the canary, you also need the the <code>iam:CreateRole</code>,
* <code>iam:CreatePolicy</code> and <code>iam:AttachRolePolicy</code> permissions.
* For more information, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_Roles">Necessary
* Roles and Permissions</a>.</p> <p>Do not include secrets or proprietary
* information in your canary names. The canary name makes up part of the Amazon
* Resource Name (ARN) for the canary, and the ARN is included in outbound calls
* over the internet. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/servicelens_canaries_security.html">Security
* Considerations for Synthetics Canaries</a>.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/CreateCanary">AWS
* API Reference</a></p>
*/
virtual Model::CreateCanaryOutcome CreateCanary(const Model::CreateCanaryRequest& request) const;
/**
* <p>Creates a canary. Canaries are scripts that monitor your endpoints and APIs
* from the outside-in. Canaries help you check the availability and latency of
* your web services and troubleshoot anomalies by investigating load time data,
* screenshots of the UI, logs, and metrics. You can set up a canary to run
* continuously or just once. </p> <p>Do not use <code>CreateCanary</code> to
* modify an existing canary. Use <a
* href="https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_UpdateCanary.html">UpdateCanary</a>
* instead.</p> <p>To create canaries, you must have the
* <code>CloudWatchSyntheticsFullAccess</code> policy. If you are creating a new
* IAM role for the canary, you also need the the <code>iam:CreateRole</code>,
* <code>iam:CreatePolicy</code> and <code>iam:AttachRolePolicy</code> permissions.
* For more information, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_Roles">Necessary
* Roles and Permissions</a>.</p> <p>Do not include secrets or proprietary
* information in your canary names. The canary name makes up part of the Amazon
* Resource Name (ARN) for the canary, and the ARN is included in outbound calls
* over the internet. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/servicelens_canaries_security.html">Security
* Considerations for Synthetics Canaries</a>.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/CreateCanary">AWS
* API Reference</a></p>
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::CreateCanaryOutcomeCallable CreateCanaryCallable(const Model::CreateCanaryRequest& request) const;
/**
* <p>Creates a canary. Canaries are scripts that monitor your endpoints and APIs
* from the outside-in. Canaries help you check the availability and latency of
* your web services and troubleshoot anomalies by investigating load time data,
* screenshots of the UI, logs, and metrics. You can set up a canary to run
* continuously or just once. </p> <p>Do not use <code>CreateCanary</code> to
* modify an existing canary. Use <a
* href="https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_UpdateCanary.html">UpdateCanary</a>
* instead.</p> <p>To create canaries, you must have the
* <code>CloudWatchSyntheticsFullAccess</code> policy. If you are creating a new
* IAM role for the canary, you also need the the <code>iam:CreateRole</code>,
* <code>iam:CreatePolicy</code> and <code>iam:AttachRolePolicy</code> permissions.
* For more information, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_Roles">Necessary
* Roles and Permissions</a>.</p> <p>Do not include secrets or proprietary
* information in your canary names. The canary name makes up part of the Amazon
* Resource Name (ARN) for the canary, and the ARN is included in outbound calls
* over the internet. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/servicelens_canaries_security.html">Security
* Considerations for Synthetics Canaries</a>.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/CreateCanary">AWS
* API Reference</a></p>
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void CreateCanaryAsync(const Model::CreateCanaryRequest& request, const CreateCanaryResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
/**
* <p>Permanently deletes the specified canary.</p> <p>When you delete a canary,
* resources used and created by the canary are not automatically deleted. After
* you delete a canary that you do not intend to use again, you should also delete
* the following:</p> <ul> <li> <p>The Lambda functions and layers used by this
* canary. These have the prefix <code>cwsyn-<i>MyCanaryName</i> </code>.</p> </li>
* <li> <p>The CloudWatch alarms created for this canary. These alarms have a name
* of <code>Synthetics-SharpDrop-Alarm-<i>MyCanaryName</i> </code>.</p> </li> <li>
* <p>Amazon S3 objects and buckets, such as the canary's artifact location.</p>
* </li> <li> <p>IAM roles created for the canary. If they were created in the
* console, these roles have the name <code>
* role/service-role/CloudWatchSyntheticsRole-<i>MyCanaryName</i> </code>.</p>
* </li> <li> <p>CloudWatch Logs log groups created for the canary. These logs
* groups have the name <code>/aws/lambda/cwsyn-<i>MyCanaryName</i> </code>. </p>
* </li> </ul> <p>Before you delete a canary, you might want to use
* <code>GetCanary</code> to display the information about this canary. Make note
* of the information returned by this operation so that you can delete these
* resources after you delete the canary.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/DeleteCanary">AWS
* API Reference</a></p>
*/
virtual Model::DeleteCanaryOutcome DeleteCanary(const Model::DeleteCanaryRequest& request) const;
/**
* <p>Permanently deletes the specified canary.</p> <p>When you delete a canary,
* resources used and created by the canary are not automatically deleted. After
* you delete a canary that you do not intend to use again, you should also delete
* the following:</p> <ul> <li> <p>The Lambda functions and layers used by this
* canary. These have the prefix <code>cwsyn-<i>MyCanaryName</i> </code>.</p> </li>
* <li> <p>The CloudWatch alarms created for this canary. These alarms have a name
* of <code>Synthetics-SharpDrop-Alarm-<i>MyCanaryName</i> </code>.</p> </li> <li>
* <p>Amazon S3 objects and buckets, such as the canary's artifact location.</p>
* </li> <li> <p>IAM roles created for the canary. If they were created in the
* console, these roles have the name <code>
* role/service-role/CloudWatchSyntheticsRole-<i>MyCanaryName</i> </code>.</p>
* </li> <li> <p>CloudWatch Logs log groups created for the canary. These logs
* groups have the name <code>/aws/lambda/cwsyn-<i>MyCanaryName</i> </code>. </p>
* </li> </ul> <p>Before you delete a canary, you might want to use
* <code>GetCanary</code> to display the information about this canary. Make note
* of the information returned by this operation so that you can delete these
* resources after you delete the canary.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/DeleteCanary">AWS
* API Reference</a></p>
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::DeleteCanaryOutcomeCallable DeleteCanaryCallable(const Model::DeleteCanaryRequest& request) const;
/**
* <p>Permanently deletes the specified canary.</p> <p>When you delete a canary,
* resources used and created by the canary are not automatically deleted. After
* you delete a canary that you do not intend to use again, you should also delete
* the following:</p> <ul> <li> <p>The Lambda functions and layers used by this
* canary. These have the prefix <code>cwsyn-<i>MyCanaryName</i> </code>.</p> </li>
* <li> <p>The CloudWatch alarms created for this canary. These alarms have a name
* of <code>Synthetics-SharpDrop-Alarm-<i>MyCanaryName</i> </code>.</p> </li> <li>
* <p>Amazon S3 objects and buckets, such as the canary's artifact location.</p>
* </li> <li> <p>IAM roles created for the canary. If they were created in the
* console, these roles have the name <code>
* role/service-role/CloudWatchSyntheticsRole-<i>MyCanaryName</i> </code>.</p>
* </li> <li> <p>CloudWatch Logs log groups created for the canary. These logs
* groups have the name <code>/aws/lambda/cwsyn-<i>MyCanaryName</i> </code>. </p>
* </li> </ul> <p>Before you delete a canary, you might want to use
* <code>GetCanary</code> to display the information about this canary. Make note
* of the information returned by this operation so that you can delete these
* resources after you delete the canary.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/DeleteCanary">AWS
* API Reference</a></p>
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void DeleteCanaryAsync(const Model::DeleteCanaryRequest& request, const DeleteCanaryResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
/**
* <p>This operation returns a list of the canaries in your account, along with
* full details about each canary.</p> <p>This operation does not have
* resource-level authorization, so if a user is able to use
* <code>DescribeCanaries</code>, the user can see all of the canaries in the
* account. A deny policy can only be used to restrict access to all canaries. It
* cannot be used on specific resources. </p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/DescribeCanaries">AWS
* API Reference</a></p>
*/
virtual Model::DescribeCanariesOutcome DescribeCanaries(const Model::DescribeCanariesRequest& request) const;
/**
* <p>This operation returns a list of the canaries in your account, along with
* full details about each canary.</p> <p>This operation does not have
* resource-level authorization, so if a user is able to use
* <code>DescribeCanaries</code>, the user can see all of the canaries in the
* account. A deny policy can only be used to restrict access to all canaries. It
* cannot be used on specific resources. </p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/DescribeCanaries">AWS
* API Reference</a></p>
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::DescribeCanariesOutcomeCallable DescribeCanariesCallable(const Model::DescribeCanariesRequest& request) const;
/**
* <p>This operation returns a list of the canaries in your account, along with
* full details about each canary.</p> <p>This operation does not have
* resource-level authorization, so if a user is able to use
* <code>DescribeCanaries</code>, the user can see all of the canaries in the
* account. A deny policy can only be used to restrict access to all canaries. It
* cannot be used on specific resources. </p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/DescribeCanaries">AWS
* API Reference</a></p>
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void DescribeCanariesAsync(const Model::DescribeCanariesRequest& request, const DescribeCanariesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
/**
* <p>Use this operation to see information from the most recent run of each canary
* that you have created.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/DescribeCanariesLastRun">AWS
* API Reference</a></p>
*/
virtual Model::DescribeCanariesLastRunOutcome DescribeCanariesLastRun(const Model::DescribeCanariesLastRunRequest& request) const;
/**
* <p>Use this operation to see information from the most recent run of each canary
* that you have created.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/DescribeCanariesLastRun">AWS
* API Reference</a></p>
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::DescribeCanariesLastRunOutcomeCallable DescribeCanariesLastRunCallable(const Model::DescribeCanariesLastRunRequest& request) const;
/**
* <p>Use this operation to see information from the most recent run of each canary
* that you have created.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/DescribeCanariesLastRun">AWS
* API Reference</a></p>
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void DescribeCanariesLastRunAsync(const Model::DescribeCanariesLastRunRequest& request, const DescribeCanariesLastRunResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
/**
* <p>Returns a list of Synthetics canary runtime versions. For more information,
* see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_Library.html">
* Canary Runtime Versions</a>.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/DescribeRuntimeVersions">AWS
* API Reference</a></p>
*/
virtual Model::DescribeRuntimeVersionsOutcome DescribeRuntimeVersions(const Model::DescribeRuntimeVersionsRequest& request) const;
/**
* <p>Returns a list of Synthetics canary runtime versions. For more information,
* see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_Library.html">
* Canary Runtime Versions</a>.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/DescribeRuntimeVersions">AWS
* API Reference</a></p>
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::DescribeRuntimeVersionsOutcomeCallable DescribeRuntimeVersionsCallable(const Model::DescribeRuntimeVersionsRequest& request) const;
/**
* <p>Returns a list of Synthetics canary runtime versions. For more information,
* see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_Library.html">
* Canary Runtime Versions</a>.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/DescribeRuntimeVersions">AWS
* API Reference</a></p>
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void DescribeRuntimeVersionsAsync(const Model::DescribeRuntimeVersionsRequest& request, const DescribeRuntimeVersionsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
/**
* <p>Retrieves complete information about one canary. You must specify the name of
* the canary that you want. To get a list of canaries and their names, use <a
* href="https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_DescribeCanaries.html">DescribeCanaries</a>.</p><p><h3>See
* Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/GetCanary">AWS
* API Reference</a></p>
*/
virtual Model::GetCanaryOutcome GetCanary(const Model::GetCanaryRequest& request) const;
/**
* <p>Retrieves complete information about one canary. You must specify the name of
* the canary that you want. To get a list of canaries and their names, use <a
* href="https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_DescribeCanaries.html">DescribeCanaries</a>.</p><p><h3>See
* Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/GetCanary">AWS
* API Reference</a></p>
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::GetCanaryOutcomeCallable GetCanaryCallable(const Model::GetCanaryRequest& request) const;
/**
* <p>Retrieves complete information about one canary. You must specify the name of
* the canary that you want. To get a list of canaries and their names, use <a
* href="https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_DescribeCanaries.html">DescribeCanaries</a>.</p><p><h3>See
* Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/GetCanary">AWS
* API Reference</a></p>
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void GetCanaryAsync(const Model::GetCanaryRequest& request, const GetCanaryResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
/**
* <p>Retrieves a list of runs for a specified canary.</p><p><h3>See Also:</h3>
* <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/GetCanaryRuns">AWS
* API Reference</a></p>
*/
virtual Model::GetCanaryRunsOutcome GetCanaryRuns(const Model::GetCanaryRunsRequest& request) const;
/**
* <p>Retrieves a list of runs for a specified canary.</p><p><h3>See Also:</h3>
* <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/GetCanaryRuns">AWS
* API Reference</a></p>
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::GetCanaryRunsOutcomeCallable GetCanaryRunsCallable(const Model::GetCanaryRunsRequest& request) const;
/**
* <p>Retrieves a list of runs for a specified canary.</p><p><h3>See Also:</h3>
* <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/GetCanaryRuns">AWS
* API Reference</a></p>
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void GetCanaryRunsAsync(const Model::GetCanaryRunsRequest& request, const GetCanaryRunsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
/**
* <p>Displays the tags associated with a canary.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/ListTagsForResource">AWS
* API Reference</a></p>
*/
virtual Model::ListTagsForResourceOutcome ListTagsForResource(const Model::ListTagsForResourceRequest& request) const;
/**
* <p>Displays the tags associated with a canary.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/ListTagsForResource">AWS
* API Reference</a></p>
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::ListTagsForResourceOutcomeCallable ListTagsForResourceCallable(const Model::ListTagsForResourceRequest& request) const;
/**
* <p>Displays the tags associated with a canary.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/ListTagsForResource">AWS
* API Reference</a></p>
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void ListTagsForResourceAsync(const Model::ListTagsForResourceRequest& request, const ListTagsForResourceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
/**
* <p>Use this operation to run a canary that has already been created. The
* frequency of the canary runs is determined by the value of the canary's
* <code>Schedule</code>. To see a canary's schedule, use <a
* href="https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_GetCanary.html">GetCanary</a>.</p><p><h3>See
* Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/StartCanary">AWS
* API Reference</a></p>
*/
virtual Model::StartCanaryOutcome StartCanary(const Model::StartCanaryRequest& request) const;
/**
* <p>Use this operation to run a canary that has already been created. The
* frequency of the canary runs is determined by the value of the canary's
* <code>Schedule</code>. To see a canary's schedule, use <a
* href="https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_GetCanary.html">GetCanary</a>.</p><p><h3>See
* Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/StartCanary">AWS
* API Reference</a></p>
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::StartCanaryOutcomeCallable StartCanaryCallable(const Model::StartCanaryRequest& request) const;
/**
* <p>Use this operation to run a canary that has already been created. The
* frequency of the canary runs is determined by the value of the canary's
* <code>Schedule</code>. To see a canary's schedule, use <a
* href="https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_GetCanary.html">GetCanary</a>.</p><p><h3>See
* Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/StartCanary">AWS
* API Reference</a></p>
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void StartCanaryAsync(const Model::StartCanaryRequest& request, const StartCanaryResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
/**
* <p>Stops the canary to prevent all future runs. If the canary is currently
* running, Synthetics stops waiting for the current run of the specified canary to
* complete. The run that is in progress completes on its own, publishes metrics,
* and uploads artifacts, but it is not recorded in Synthetics as a completed
* run.</p> <p>You can use <code>StartCanary</code> to start it running again with
* the canarys current schedule at any point in the future. </p><p><h3>See
* Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/StopCanary">AWS
* API Reference</a></p>
*/
virtual Model::StopCanaryOutcome StopCanary(const Model::StopCanaryRequest& request) const;
/**
* <p>Stops the canary to prevent all future runs. If the canary is currently
* running, Synthetics stops waiting for the current run of the specified canary to
* complete. The run that is in progress completes on its own, publishes metrics,
* and uploads artifacts, but it is not recorded in Synthetics as a completed
* run.</p> <p>You can use <code>StartCanary</code> to start it running again with
* the canarys current schedule at any point in the future. </p><p><h3>See
* Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/StopCanary">AWS
* API Reference</a></p>
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::StopCanaryOutcomeCallable StopCanaryCallable(const Model::StopCanaryRequest& request) const;
/**
* <p>Stops the canary to prevent all future runs. If the canary is currently
* running, Synthetics stops waiting for the current run of the specified canary to
* complete. The run that is in progress completes on its own, publishes metrics,
* and uploads artifacts, but it is not recorded in Synthetics as a completed
* run.</p> <p>You can use <code>StartCanary</code> to start it running again with
* the canarys current schedule at any point in the future. </p><p><h3>See
* Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/StopCanary">AWS
* API Reference</a></p>
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void StopCanaryAsync(const Model::StopCanaryRequest& request, const StopCanaryResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
/**
* <p>Assigns one or more tags (key-value pairs) to the specified canary. </p>
* <p>Tags can help you organize and categorize your resources. You can also use
* them to scope user permissions, by granting a user permission to access or
* change only resources with certain tag values.</p> <p>Tags don't have any
* semantic meaning to AWS and are interpreted strictly as strings of
* characters.</p> <p>You can use the <code>TagResource</code> action with a canary
* that already has tags. If you specify a new tag key for the alarm, this tag is
* appended to the list of tags associated with the alarm. If you specify a tag key
* that is already associated with the alarm, the new tag value that you specify
* replaces the previous value for that tag.</p> <p>You can associate as many as 50
* tags with a canary.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/TagResource">AWS
* API Reference</a></p>
*/
virtual Model::TagResourceOutcome TagResource(const Model::TagResourceRequest& request) const;
/**
* <p>Assigns one or more tags (key-value pairs) to the specified canary. </p>
* <p>Tags can help you organize and categorize your resources. You can also use
* them to scope user permissions, by granting a user permission to access or
* change only resources with certain tag values.</p> <p>Tags don't have any
* semantic meaning to AWS and are interpreted strictly as strings of
* characters.</p> <p>You can use the <code>TagResource</code> action with a canary
* that already has tags. If you specify a new tag key for the alarm, this tag is
* appended to the list of tags associated with the alarm. If you specify a tag key
* that is already associated with the alarm, the new tag value that you specify
* replaces the previous value for that tag.</p> <p>You can associate as many as 50
* tags with a canary.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/TagResource">AWS
* API Reference</a></p>
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::TagResourceOutcomeCallable TagResourceCallable(const Model::TagResourceRequest& request) const;
/**
* <p>Assigns one or more tags (key-value pairs) to the specified canary. </p>
* <p>Tags can help you organize and categorize your resources. You can also use
* them to scope user permissions, by granting a user permission to access or
* change only resources with certain tag values.</p> <p>Tags don't have any
* semantic meaning to AWS and are interpreted strictly as strings of
* characters.</p> <p>You can use the <code>TagResource</code> action with a canary
* that already has tags. If you specify a new tag key for the alarm, this tag is
* appended to the list of tags associated with the alarm. If you specify a tag key
* that is already associated with the alarm, the new tag value that you specify
* replaces the previous value for that tag.</p> <p>You can associate as many as 50
* tags with a canary.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/TagResource">AWS
* API Reference</a></p>
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void TagResourceAsync(const Model::TagResourceRequest& request, const TagResourceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
/**
* <p>Removes one or more tags from the specified canary.</p><p><h3>See Also:</h3>
* <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/UntagResource">AWS
* API Reference</a></p>
*/
virtual Model::UntagResourceOutcome UntagResource(const Model::UntagResourceRequest& request) const;
/**
* <p>Removes one or more tags from the specified canary.</p><p><h3>See Also:</h3>
* <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/UntagResource">AWS
* API Reference</a></p>
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::UntagResourceOutcomeCallable UntagResourceCallable(const Model::UntagResourceRequest& request) const;
/**
* <p>Removes one or more tags from the specified canary.</p><p><h3>See Also:</h3>
* <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/UntagResource">AWS
* API Reference</a></p>
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void UntagResourceAsync(const Model::UntagResourceRequest& request, const UntagResourceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
/**
* <p>Use this operation to change the settings of a canary that has already been
* created.</p> <p>You can't use this operation to update the tags of an existing
* canary. To change the tags of an existing canary, use <a
* href="https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_TagResource.html">TagResource</a>.</p><p><h3>See
* Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/UpdateCanary">AWS
* API Reference</a></p>
*/
virtual Model::UpdateCanaryOutcome UpdateCanary(const Model::UpdateCanaryRequest& request) const;
/**
* <p>Use this operation to change the settings of a canary that has already been
* created.</p> <p>You can't use this operation to update the tags of an existing
* canary. To change the tags of an existing canary, use <a
* href="https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_TagResource.html">TagResource</a>.</p><p><h3>See
* Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/UpdateCanary">AWS
* API Reference</a></p>
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::UpdateCanaryOutcomeCallable UpdateCanaryCallable(const Model::UpdateCanaryRequest& request) const;
/**
* <p>Use this operation to change the settings of a canary that has already been
* created.</p> <p>You can't use this operation to update the tags of an existing
* canary. To change the tags of an existing canary, use <a
* href="https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_TagResource.html">TagResource</a>.</p><p><h3>See
* Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/UpdateCanary">AWS
* API Reference</a></p>
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void UpdateCanaryAsync(const Model::UpdateCanaryRequest& request, const UpdateCanaryResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
void OverrideEndpoint(const Aws::String& endpoint);
private:
void init(const Aws::Client::ClientConfiguration& clientConfiguration);
void CreateCanaryAsyncHelper(const Model::CreateCanaryRequest& request, const CreateCanaryResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
void DeleteCanaryAsyncHelper(const Model::DeleteCanaryRequest& request, const DeleteCanaryResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
void DescribeCanariesAsyncHelper(const Model::DescribeCanariesRequest& request, const DescribeCanariesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
void DescribeCanariesLastRunAsyncHelper(const Model::DescribeCanariesLastRunRequest& request, const DescribeCanariesLastRunResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
void DescribeRuntimeVersionsAsyncHelper(const Model::DescribeRuntimeVersionsRequest& request, const DescribeRuntimeVersionsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
void GetCanaryAsyncHelper(const Model::GetCanaryRequest& request, const GetCanaryResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
void GetCanaryRunsAsyncHelper(const Model::GetCanaryRunsRequest& request, const GetCanaryRunsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
void ListTagsForResourceAsyncHelper(const Model::ListTagsForResourceRequest& request, const ListTagsForResourceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
void StartCanaryAsyncHelper(const Model::StartCanaryRequest& request, const StartCanaryResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
void StopCanaryAsyncHelper(const Model::StopCanaryRequest& request, const StopCanaryResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
void TagResourceAsyncHelper(const Model::TagResourceRequest& request, const TagResourceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
void UntagResourceAsyncHelper(const Model::UntagResourceRequest& request, const UntagResourceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
void UpdateCanaryAsyncHelper(const Model::UpdateCanaryRequest& request, const UpdateCanaryResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
Aws::String m_uri;
Aws::String m_configScheme;
std::shared_ptr<Aws::Utils::Threading::Executor> m_executor;
};
} // namespace Synthetics
} // namespace Aws

View File

@@ -0,0 +1,21 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
#include <aws/core/Region.h>
#include <aws/core/utils/memory/stl/AWSString.h>
namespace Aws
{
namespace Synthetics
{
namespace SyntheticsEndpoint
{
AWS_SYNTHETICS_API Aws::String ForRegion(const Aws::String& regionName, bool useDualStack = false);
} // namespace SyntheticsEndpoint
} // namespace Synthetics
} // namespace Aws

View File

@@ -0,0 +1,23 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
#include <aws/core/client/AWSErrorMarshaller.h>
namespace Aws
{
namespace Client
{
class AWS_SYNTHETICS_API SyntheticsErrorMarshaller : public Aws::Client::JsonErrorMarshaller
{
public:
Aws::Client::AWSError<Aws::Client::CoreErrors> FindErrorByName(const char* exceptionName) const override;
};
} // namespace Client
} // namespace Aws

View File

@@ -0,0 +1,73 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/core/client/AWSError.h>
#include <aws/core/client/CoreErrors.h>
#include <aws/synthetics/Synthetics_EXPORTS.h>
namespace Aws
{
namespace Synthetics
{
enum class SyntheticsErrors
{
//From Core//
//////////////////////////////////////////////////////////////////////////////////////////
INCOMPLETE_SIGNATURE = 0,
INTERNAL_FAILURE = 1,
INVALID_ACTION = 2,
INVALID_CLIENT_TOKEN_ID = 3,
INVALID_PARAMETER_COMBINATION = 4,
INVALID_QUERY_PARAMETER = 5,
INVALID_PARAMETER_VALUE = 6,
MISSING_ACTION = 7, // SDK should never allow
MISSING_AUTHENTICATION_TOKEN = 8, // SDK should never allow
MISSING_PARAMETER = 9, // SDK should never allow
OPT_IN_REQUIRED = 10,
REQUEST_EXPIRED = 11,
SERVICE_UNAVAILABLE = 12,
THROTTLING = 13,
VALIDATION = 14,
ACCESS_DENIED = 15,
RESOURCE_NOT_FOUND = 16,
UNRECOGNIZED_CLIENT = 17,
MALFORMED_QUERY_STRING = 18,
SLOW_DOWN = 19,
REQUEST_TIME_TOO_SKEWED = 20,
INVALID_SIGNATURE = 21,
SIGNATURE_DOES_NOT_MATCH = 22,
INVALID_ACCESS_KEY_ID = 23,
REQUEST_TIMEOUT = 24,
NETWORK_CONNECTION = 99,
UNKNOWN = 100,
///////////////////////////////////////////////////////////////////////////////////////////
CONFLICT= static_cast<int>(Aws::Client::CoreErrors::SERVICE_EXTENSION_START_RANGE) + 1,
INTERNAL_SERVER
};
class AWS_SYNTHETICS_API SyntheticsError : public Aws::Client::AWSError<SyntheticsErrors>
{
public:
SyntheticsError() {}
SyntheticsError(const Aws::Client::AWSError<Aws::Client::CoreErrors>& rhs) : Aws::Client::AWSError<SyntheticsErrors>(rhs) {}
SyntheticsError(Aws::Client::AWSError<Aws::Client::CoreErrors>&& rhs) : Aws::Client::AWSError<SyntheticsErrors>(rhs) {}
SyntheticsError(const Aws::Client::AWSError<SyntheticsErrors>& rhs) : Aws::Client::AWSError<SyntheticsErrors>(rhs) {}
SyntheticsError(Aws::Client::AWSError<SyntheticsErrors>&& rhs) : Aws::Client::AWSError<SyntheticsErrors>(rhs) {}
template <typename T>
T GetModeledError();
};
namespace SyntheticsErrorMapper
{
AWS_SYNTHETICS_API Aws::Client::AWSError<Aws::Client::CoreErrors> GetErrorForName(const char* errorName);
}
} // namespace Synthetics
} // namespace Aws

View File

@@ -0,0 +1,42 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
#include <aws/core/AmazonSerializableWebServiceRequest.h>
#include <aws/core/utils/UnreferencedParam.h>
#include <aws/core/http/HttpRequest.h>
namespace Aws
{
namespace Synthetics
{
class AWS_SYNTHETICS_API SyntheticsRequest : public Aws::AmazonSerializableWebServiceRequest
{
public:
virtual ~SyntheticsRequest () {}
void AddParametersToRequest(Aws::Http::HttpRequest& httpRequest) const { AWS_UNREFERENCED_PARAM(httpRequest); }
inline Aws::Http::HeaderValueCollection GetHeaders() const override
{
auto headers = GetRequestSpecificHeaders();
if(headers.size() == 0 || (headers.size() > 0 && headers.count(Aws::Http::CONTENT_TYPE_HEADER) == 0))
{
headers.emplace(Aws::Http::HeaderValuePair(Aws::Http::CONTENT_TYPE_HEADER, Aws::AMZN_JSON_CONTENT_TYPE_1_1 ));
}
headers.emplace(Aws::Http::HeaderValuePair(Aws::Http::API_VERSION_HEADER, "2017-10-11"));
return headers;
}
protected:
virtual Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const { return Aws::Http::HeaderValueCollection(); }
};
} // namespace Synthetics
} // namespace Aws

View File

@@ -0,0 +1,29 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#ifdef _MSC_VER
//disable windows complaining about max template size.
#pragma warning (disable : 4503)
#endif // _MSC_VER
#if defined (USE_WINDOWS_DLL_SEMANTICS) || defined (_WIN32)
#ifdef _MSC_VER
#pragma warning(disable : 4251)
#endif // _MSC_VER
#ifdef USE_IMPORT_EXPORT
#ifdef AWS_SYNTHETICS_EXPORTS
#define AWS_SYNTHETICS_API __declspec(dllexport)
#else
#define AWS_SYNTHETICS_API __declspec(dllimport)
#endif /* AWS_SYNTHETICS_EXPORTS */
#else
#define AWS_SYNTHETICS_API
#endif // USE_IMPORT_EXPORT
#else // defined (USE_WINDOWS_DLL_SEMANTICS) || defined (WIN32)
#define AWS_SYNTHETICS_API
#endif // defined (USE_WINDOWS_DLL_SEMANTICS) || defined (WIN32)

View File

@@ -0,0 +1,685 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/synthetics/model/CanaryCodeOutput.h>
#include <aws/synthetics/model/CanaryScheduleOutput.h>
#include <aws/synthetics/model/CanaryRunConfigOutput.h>
#include <aws/synthetics/model/CanaryStatus.h>
#include <aws/synthetics/model/CanaryTimeline.h>
#include <aws/synthetics/model/VpcConfigOutput.h>
#include <aws/core/utils/memory/stl/AWSMap.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace Synthetics
{
namespace Model
{
/**
* <p>This structure contains all information about one canary in your
* account.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/Canary">AWS
* API Reference</a></p>
*/
class AWS_SYNTHETICS_API Canary
{
public:
Canary();
Canary(Aws::Utils::Json::JsonView jsonValue);
Canary& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>The unique ID of this canary.</p>
*/
inline const Aws::String& GetId() const{ return m_id; }
/**
* <p>The unique ID of this canary.</p>
*/
inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
/**
* <p>The unique ID of this canary.</p>
*/
inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; }
/**
* <p>The unique ID of this canary.</p>
*/
inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); }
/**
* <p>The unique ID of this canary.</p>
*/
inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); }
/**
* <p>The unique ID of this canary.</p>
*/
inline Canary& WithId(const Aws::String& value) { SetId(value); return *this;}
/**
* <p>The unique ID of this canary.</p>
*/
inline Canary& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;}
/**
* <p>The unique ID of this canary.</p>
*/
inline Canary& WithId(const char* value) { SetId(value); return *this;}
/**
* <p>The name of the canary.</p>
*/
inline const Aws::String& GetName() const{ return m_name; }
/**
* <p>The name of the canary.</p>
*/
inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
/**
* <p>The name of the canary.</p>
*/
inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; }
/**
* <p>The name of the canary.</p>
*/
inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); }
/**
* <p>The name of the canary.</p>
*/
inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); }
/**
* <p>The name of the canary.</p>
*/
inline Canary& WithName(const Aws::String& value) { SetName(value); return *this;}
/**
* <p>The name of the canary.</p>
*/
inline Canary& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;}
/**
* <p>The name of the canary.</p>
*/
inline Canary& WithName(const char* value) { SetName(value); return *this;}
inline const CanaryCodeOutput& GetCode() const{ return m_code; }
inline bool CodeHasBeenSet() const { return m_codeHasBeenSet; }
inline void SetCode(const CanaryCodeOutput& value) { m_codeHasBeenSet = true; m_code = value; }
inline void SetCode(CanaryCodeOutput&& value) { m_codeHasBeenSet = true; m_code = std::move(value); }
inline Canary& WithCode(const CanaryCodeOutput& value) { SetCode(value); return *this;}
inline Canary& WithCode(CanaryCodeOutput&& value) { SetCode(std::move(value)); return *this;}
/**
* <p>The ARN of the IAM role used to run the canary. This role must include
* <code>lambda.amazonaws.com</code> as a principal in the trust policy.</p>
*/
inline const Aws::String& GetExecutionRoleArn() const{ return m_executionRoleArn; }
/**
* <p>The ARN of the IAM role used to run the canary. This role must include
* <code>lambda.amazonaws.com</code> as a principal in the trust policy.</p>
*/
inline bool ExecutionRoleArnHasBeenSet() const { return m_executionRoleArnHasBeenSet; }
/**
* <p>The ARN of the IAM role used to run the canary. This role must include
* <code>lambda.amazonaws.com</code> as a principal in the trust policy.</p>
*/
inline void SetExecutionRoleArn(const Aws::String& value) { m_executionRoleArnHasBeenSet = true; m_executionRoleArn = value; }
/**
* <p>The ARN of the IAM role used to run the canary. This role must include
* <code>lambda.amazonaws.com</code> as a principal in the trust policy.</p>
*/
inline void SetExecutionRoleArn(Aws::String&& value) { m_executionRoleArnHasBeenSet = true; m_executionRoleArn = std::move(value); }
/**
* <p>The ARN of the IAM role used to run the canary. This role must include
* <code>lambda.amazonaws.com</code> as a principal in the trust policy.</p>
*/
inline void SetExecutionRoleArn(const char* value) { m_executionRoleArnHasBeenSet = true; m_executionRoleArn.assign(value); }
/**
* <p>The ARN of the IAM role used to run the canary. This role must include
* <code>lambda.amazonaws.com</code> as a principal in the trust policy.</p>
*/
inline Canary& WithExecutionRoleArn(const Aws::String& value) { SetExecutionRoleArn(value); return *this;}
/**
* <p>The ARN of the IAM role used to run the canary. This role must include
* <code>lambda.amazonaws.com</code> as a principal in the trust policy.</p>
*/
inline Canary& WithExecutionRoleArn(Aws::String&& value) { SetExecutionRoleArn(std::move(value)); return *this;}
/**
* <p>The ARN of the IAM role used to run the canary. This role must include
* <code>lambda.amazonaws.com</code> as a principal in the trust policy.</p>
*/
inline Canary& WithExecutionRoleArn(const char* value) { SetExecutionRoleArn(value); return *this;}
/**
* <p>A structure that contains information about how often the canary is to run,
* and when these runs are to stop.</p>
*/
inline const CanaryScheduleOutput& GetSchedule() const{ return m_schedule; }
/**
* <p>A structure that contains information about how often the canary is to run,
* and when these runs are to stop.</p>
*/
inline bool ScheduleHasBeenSet() const { return m_scheduleHasBeenSet; }
/**
* <p>A structure that contains information about how often the canary is to run,
* and when these runs are to stop.</p>
*/
inline void SetSchedule(const CanaryScheduleOutput& value) { m_scheduleHasBeenSet = true; m_schedule = value; }
/**
* <p>A structure that contains information about how often the canary is to run,
* and when these runs are to stop.</p>
*/
inline void SetSchedule(CanaryScheduleOutput&& value) { m_scheduleHasBeenSet = true; m_schedule = std::move(value); }
/**
* <p>A structure that contains information about how often the canary is to run,
* and when these runs are to stop.</p>
*/
inline Canary& WithSchedule(const CanaryScheduleOutput& value) { SetSchedule(value); return *this;}
/**
* <p>A structure that contains information about how often the canary is to run,
* and when these runs are to stop.</p>
*/
inline Canary& WithSchedule(CanaryScheduleOutput&& value) { SetSchedule(std::move(value)); return *this;}
inline const CanaryRunConfigOutput& GetRunConfig() const{ return m_runConfig; }
inline bool RunConfigHasBeenSet() const { return m_runConfigHasBeenSet; }
inline void SetRunConfig(const CanaryRunConfigOutput& value) { m_runConfigHasBeenSet = true; m_runConfig = value; }
inline void SetRunConfig(CanaryRunConfigOutput&& value) { m_runConfigHasBeenSet = true; m_runConfig = std::move(value); }
inline Canary& WithRunConfig(const CanaryRunConfigOutput& value) { SetRunConfig(value); return *this;}
inline Canary& WithRunConfig(CanaryRunConfigOutput&& value) { SetRunConfig(std::move(value)); return *this;}
/**
* <p>The number of days to retain data about successful runs of this canary.</p>
*/
inline int GetSuccessRetentionPeriodInDays() const{ return m_successRetentionPeriodInDays; }
/**
* <p>The number of days to retain data about successful runs of this canary.</p>
*/
inline bool SuccessRetentionPeriodInDaysHasBeenSet() const { return m_successRetentionPeriodInDaysHasBeenSet; }
/**
* <p>The number of days to retain data about successful runs of this canary.</p>
*/
inline void SetSuccessRetentionPeriodInDays(int value) { m_successRetentionPeriodInDaysHasBeenSet = true; m_successRetentionPeriodInDays = value; }
/**
* <p>The number of days to retain data about successful runs of this canary.</p>
*/
inline Canary& WithSuccessRetentionPeriodInDays(int value) { SetSuccessRetentionPeriodInDays(value); return *this;}
/**
* <p>The number of days to retain data about failed runs of this canary.</p>
*/
inline int GetFailureRetentionPeriodInDays() const{ return m_failureRetentionPeriodInDays; }
/**
* <p>The number of days to retain data about failed runs of this canary.</p>
*/
inline bool FailureRetentionPeriodInDaysHasBeenSet() const { return m_failureRetentionPeriodInDaysHasBeenSet; }
/**
* <p>The number of days to retain data about failed runs of this canary.</p>
*/
inline void SetFailureRetentionPeriodInDays(int value) { m_failureRetentionPeriodInDaysHasBeenSet = true; m_failureRetentionPeriodInDays = value; }
/**
* <p>The number of days to retain data about failed runs of this canary.</p>
*/
inline Canary& WithFailureRetentionPeriodInDays(int value) { SetFailureRetentionPeriodInDays(value); return *this;}
/**
* <p>A structure that contains information about the canary's status.</p>
*/
inline const CanaryStatus& GetStatus() const{ return m_status; }
/**
* <p>A structure that contains information about the canary's status.</p>
*/
inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
/**
* <p>A structure that contains information about the canary's status.</p>
*/
inline void SetStatus(const CanaryStatus& value) { m_statusHasBeenSet = true; m_status = value; }
/**
* <p>A structure that contains information about the canary's status.</p>
*/
inline void SetStatus(CanaryStatus&& value) { m_statusHasBeenSet = true; m_status = std::move(value); }
/**
* <p>A structure that contains information about the canary's status.</p>
*/
inline Canary& WithStatus(const CanaryStatus& value) { SetStatus(value); return *this;}
/**
* <p>A structure that contains information about the canary's status.</p>
*/
inline Canary& WithStatus(CanaryStatus&& value) { SetStatus(std::move(value)); return *this;}
/**
* <p>A structure that contains information about when the canary was created,
* modified, and most recently run.</p>
*/
inline const CanaryTimeline& GetTimeline() const{ return m_timeline; }
/**
* <p>A structure that contains information about when the canary was created,
* modified, and most recently run.</p>
*/
inline bool TimelineHasBeenSet() const { return m_timelineHasBeenSet; }
/**
* <p>A structure that contains information about when the canary was created,
* modified, and most recently run.</p>
*/
inline void SetTimeline(const CanaryTimeline& value) { m_timelineHasBeenSet = true; m_timeline = value; }
/**
* <p>A structure that contains information about when the canary was created,
* modified, and most recently run.</p>
*/
inline void SetTimeline(CanaryTimeline&& value) { m_timelineHasBeenSet = true; m_timeline = std::move(value); }
/**
* <p>A structure that contains information about when the canary was created,
* modified, and most recently run.</p>
*/
inline Canary& WithTimeline(const CanaryTimeline& value) { SetTimeline(value); return *this;}
/**
* <p>A structure that contains information about when the canary was created,
* modified, and most recently run.</p>
*/
inline Canary& WithTimeline(CanaryTimeline&& value) { SetTimeline(std::move(value)); return *this;}
/**
* <p>The location in Amazon S3 where Synthetics stores artifacts from the runs of
* this canary. Artifacts include the log file, screenshots, and HAR files.</p>
*/
inline const Aws::String& GetArtifactS3Location() const{ return m_artifactS3Location; }
/**
* <p>The location in Amazon S3 where Synthetics stores artifacts from the runs of
* this canary. Artifacts include the log file, screenshots, and HAR files.</p>
*/
inline bool ArtifactS3LocationHasBeenSet() const { return m_artifactS3LocationHasBeenSet; }
/**
* <p>The location in Amazon S3 where Synthetics stores artifacts from the runs of
* this canary. Artifacts include the log file, screenshots, and HAR files.</p>
*/
inline void SetArtifactS3Location(const Aws::String& value) { m_artifactS3LocationHasBeenSet = true; m_artifactS3Location = value; }
/**
* <p>The location in Amazon S3 where Synthetics stores artifacts from the runs of
* this canary. Artifacts include the log file, screenshots, and HAR files.</p>
*/
inline void SetArtifactS3Location(Aws::String&& value) { m_artifactS3LocationHasBeenSet = true; m_artifactS3Location = std::move(value); }
/**
* <p>The location in Amazon S3 where Synthetics stores artifacts from the runs of
* this canary. Artifacts include the log file, screenshots, and HAR files.</p>
*/
inline void SetArtifactS3Location(const char* value) { m_artifactS3LocationHasBeenSet = true; m_artifactS3Location.assign(value); }
/**
* <p>The location in Amazon S3 where Synthetics stores artifacts from the runs of
* this canary. Artifacts include the log file, screenshots, and HAR files.</p>
*/
inline Canary& WithArtifactS3Location(const Aws::String& value) { SetArtifactS3Location(value); return *this;}
/**
* <p>The location in Amazon S3 where Synthetics stores artifacts from the runs of
* this canary. Artifacts include the log file, screenshots, and HAR files.</p>
*/
inline Canary& WithArtifactS3Location(Aws::String&& value) { SetArtifactS3Location(std::move(value)); return *this;}
/**
* <p>The location in Amazon S3 where Synthetics stores artifacts from the runs of
* this canary. Artifacts include the log file, screenshots, and HAR files.</p>
*/
inline Canary& WithArtifactS3Location(const char* value) { SetArtifactS3Location(value); return *this;}
/**
* <p>The ARN of the Lambda function that is used as your canary's engine. For more
* information about Lambda ARN format, see <a
* href="https://docs.aws.amazon.com/lambda/latest/dg/lambda-api-permissions-ref.html">Resources
* and Conditions for Lambda Actions</a>.</p>
*/
inline const Aws::String& GetEngineArn() const{ return m_engineArn; }
/**
* <p>The ARN of the Lambda function that is used as your canary's engine. For more
* information about Lambda ARN format, see <a
* href="https://docs.aws.amazon.com/lambda/latest/dg/lambda-api-permissions-ref.html">Resources
* and Conditions for Lambda Actions</a>.</p>
*/
inline bool EngineArnHasBeenSet() const { return m_engineArnHasBeenSet; }
/**
* <p>The ARN of the Lambda function that is used as your canary's engine. For more
* information about Lambda ARN format, see <a
* href="https://docs.aws.amazon.com/lambda/latest/dg/lambda-api-permissions-ref.html">Resources
* and Conditions for Lambda Actions</a>.</p>
*/
inline void SetEngineArn(const Aws::String& value) { m_engineArnHasBeenSet = true; m_engineArn = value; }
/**
* <p>The ARN of the Lambda function that is used as your canary's engine. For more
* information about Lambda ARN format, see <a
* href="https://docs.aws.amazon.com/lambda/latest/dg/lambda-api-permissions-ref.html">Resources
* and Conditions for Lambda Actions</a>.</p>
*/
inline void SetEngineArn(Aws::String&& value) { m_engineArnHasBeenSet = true; m_engineArn = std::move(value); }
/**
* <p>The ARN of the Lambda function that is used as your canary's engine. For more
* information about Lambda ARN format, see <a
* href="https://docs.aws.amazon.com/lambda/latest/dg/lambda-api-permissions-ref.html">Resources
* and Conditions for Lambda Actions</a>.</p>
*/
inline void SetEngineArn(const char* value) { m_engineArnHasBeenSet = true; m_engineArn.assign(value); }
/**
* <p>The ARN of the Lambda function that is used as your canary's engine. For more
* information about Lambda ARN format, see <a
* href="https://docs.aws.amazon.com/lambda/latest/dg/lambda-api-permissions-ref.html">Resources
* and Conditions for Lambda Actions</a>.</p>
*/
inline Canary& WithEngineArn(const Aws::String& value) { SetEngineArn(value); return *this;}
/**
* <p>The ARN of the Lambda function that is used as your canary's engine. For more
* information about Lambda ARN format, see <a
* href="https://docs.aws.amazon.com/lambda/latest/dg/lambda-api-permissions-ref.html">Resources
* and Conditions for Lambda Actions</a>.</p>
*/
inline Canary& WithEngineArn(Aws::String&& value) { SetEngineArn(std::move(value)); return *this;}
/**
* <p>The ARN of the Lambda function that is used as your canary's engine. For more
* information about Lambda ARN format, see <a
* href="https://docs.aws.amazon.com/lambda/latest/dg/lambda-api-permissions-ref.html">Resources
* and Conditions for Lambda Actions</a>.</p>
*/
inline Canary& WithEngineArn(const char* value) { SetEngineArn(value); return *this;}
/**
* <p>Specifies the runtime version to use for the canary. Currently, the only
* valid value is <code>syn-1.0</code>. For more information about runtime
* versions, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_Library.html">
* Canary Runtime Versions</a>.</p>
*/
inline const Aws::String& GetRuntimeVersion() const{ return m_runtimeVersion; }
/**
* <p>Specifies the runtime version to use for the canary. Currently, the only
* valid value is <code>syn-1.0</code>. For more information about runtime
* versions, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_Library.html">
* Canary Runtime Versions</a>.</p>
*/
inline bool RuntimeVersionHasBeenSet() const { return m_runtimeVersionHasBeenSet; }
/**
* <p>Specifies the runtime version to use for the canary. Currently, the only
* valid value is <code>syn-1.0</code>. For more information about runtime
* versions, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_Library.html">
* Canary Runtime Versions</a>.</p>
*/
inline void SetRuntimeVersion(const Aws::String& value) { m_runtimeVersionHasBeenSet = true; m_runtimeVersion = value; }
/**
* <p>Specifies the runtime version to use for the canary. Currently, the only
* valid value is <code>syn-1.0</code>. For more information about runtime
* versions, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_Library.html">
* Canary Runtime Versions</a>.</p>
*/
inline void SetRuntimeVersion(Aws::String&& value) { m_runtimeVersionHasBeenSet = true; m_runtimeVersion = std::move(value); }
/**
* <p>Specifies the runtime version to use for the canary. Currently, the only
* valid value is <code>syn-1.0</code>. For more information about runtime
* versions, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_Library.html">
* Canary Runtime Versions</a>.</p>
*/
inline void SetRuntimeVersion(const char* value) { m_runtimeVersionHasBeenSet = true; m_runtimeVersion.assign(value); }
/**
* <p>Specifies the runtime version to use for the canary. Currently, the only
* valid value is <code>syn-1.0</code>. For more information about runtime
* versions, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_Library.html">
* Canary Runtime Versions</a>.</p>
*/
inline Canary& WithRuntimeVersion(const Aws::String& value) { SetRuntimeVersion(value); return *this;}
/**
* <p>Specifies the runtime version to use for the canary. Currently, the only
* valid value is <code>syn-1.0</code>. For more information about runtime
* versions, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_Library.html">
* Canary Runtime Versions</a>.</p>
*/
inline Canary& WithRuntimeVersion(Aws::String&& value) { SetRuntimeVersion(std::move(value)); return *this;}
/**
* <p>Specifies the runtime version to use for the canary. Currently, the only
* valid value is <code>syn-1.0</code>. For more information about runtime
* versions, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_Library.html">
* Canary Runtime Versions</a>.</p>
*/
inline Canary& WithRuntimeVersion(const char* value) { SetRuntimeVersion(value); return *this;}
inline const VpcConfigOutput& GetVpcConfig() const{ return m_vpcConfig; }
inline bool VpcConfigHasBeenSet() const { return m_vpcConfigHasBeenSet; }
inline void SetVpcConfig(const VpcConfigOutput& value) { m_vpcConfigHasBeenSet = true; m_vpcConfig = value; }
inline void SetVpcConfig(VpcConfigOutput&& value) { m_vpcConfigHasBeenSet = true; m_vpcConfig = std::move(value); }
inline Canary& WithVpcConfig(const VpcConfigOutput& value) { SetVpcConfig(value); return *this;}
inline Canary& WithVpcConfig(VpcConfigOutput&& value) { SetVpcConfig(std::move(value)); return *this;}
/**
* <p>The list of key-value pairs that are associated with the canary.</p>
*/
inline const Aws::Map<Aws::String, Aws::String>& GetTags() const{ return m_tags; }
/**
* <p>The list of key-value pairs that are associated with the canary.</p>
*/
inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
/**
* <p>The list of key-value pairs that are associated with the canary.</p>
*/
inline void SetTags(const Aws::Map<Aws::String, Aws::String>& value) { m_tagsHasBeenSet = true; m_tags = value; }
/**
* <p>The list of key-value pairs that are associated with the canary.</p>
*/
inline void SetTags(Aws::Map<Aws::String, Aws::String>&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); }
/**
* <p>The list of key-value pairs that are associated with the canary.</p>
*/
inline Canary& WithTags(const Aws::Map<Aws::String, Aws::String>& value) { SetTags(value); return *this;}
/**
* <p>The list of key-value pairs that are associated with the canary.</p>
*/
inline Canary& WithTags(Aws::Map<Aws::String, Aws::String>&& value) { SetTags(std::move(value)); return *this;}
/**
* <p>The list of key-value pairs that are associated with the canary.</p>
*/
inline Canary& AddTags(const Aws::String& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; }
/**
* <p>The list of key-value pairs that are associated with the canary.</p>
*/
inline Canary& AddTags(Aws::String&& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; }
/**
* <p>The list of key-value pairs that are associated with the canary.</p>
*/
inline Canary& AddTags(const Aws::String& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; }
/**
* <p>The list of key-value pairs that are associated with the canary.</p>
*/
inline Canary& AddTags(Aws::String&& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), std::move(value)); return *this; }
/**
* <p>The list of key-value pairs that are associated with the canary.</p>
*/
inline Canary& AddTags(const char* key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; }
/**
* <p>The list of key-value pairs that are associated with the canary.</p>
*/
inline Canary& AddTags(Aws::String&& key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; }
/**
* <p>The list of key-value pairs that are associated with the canary.</p>
*/
inline Canary& AddTags(const char* key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; }
private:
Aws::String m_id;
bool m_idHasBeenSet;
Aws::String m_name;
bool m_nameHasBeenSet;
CanaryCodeOutput m_code;
bool m_codeHasBeenSet;
Aws::String m_executionRoleArn;
bool m_executionRoleArnHasBeenSet;
CanaryScheduleOutput m_schedule;
bool m_scheduleHasBeenSet;
CanaryRunConfigOutput m_runConfig;
bool m_runConfigHasBeenSet;
int m_successRetentionPeriodInDays;
bool m_successRetentionPeriodInDaysHasBeenSet;
int m_failureRetentionPeriodInDays;
bool m_failureRetentionPeriodInDaysHasBeenSet;
CanaryStatus m_status;
bool m_statusHasBeenSet;
CanaryTimeline m_timeline;
bool m_timelineHasBeenSet;
Aws::String m_artifactS3Location;
bool m_artifactS3LocationHasBeenSet;
Aws::String m_engineArn;
bool m_engineArnHasBeenSet;
Aws::String m_runtimeVersion;
bool m_runtimeVersionHasBeenSet;
VpcConfigOutput m_vpcConfig;
bool m_vpcConfigHasBeenSet;
Aws::Map<Aws::String, Aws::String> m_tags;
bool m_tagsHasBeenSet;
};
} // namespace Model
} // namespace Synthetics
} // namespace Aws

View File

@@ -0,0 +1,312 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/Array.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace Synthetics
{
namespace Model
{
/**
* <p>Use this structure to input your script code for the canary. This structure
* contains the Lambda handler with the location where the canary should start
* running the script. If the script is stored in an S3 bucket, the bucket name,
* key, and version are also included. If the script was passed into the canary
* directly, the script code is contained in the value of <code>Zipfile</code>.
* </p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/CanaryCodeInput">AWS
* API Reference</a></p>
*/
class AWS_SYNTHETICS_API CanaryCodeInput
{
public:
CanaryCodeInput();
CanaryCodeInput(Aws::Utils::Json::JsonView jsonValue);
CanaryCodeInput& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>If your canary script is located in S3, specify the full bucket name here.
* The bucket must already exist. Specify the full bucket name, including
* <code>s3://</code> as the start of the bucket name.</p>
*/
inline const Aws::String& GetS3Bucket() const{ return m_s3Bucket; }
/**
* <p>If your canary script is located in S3, specify the full bucket name here.
* The bucket must already exist. Specify the full bucket name, including
* <code>s3://</code> as the start of the bucket name.</p>
*/
inline bool S3BucketHasBeenSet() const { return m_s3BucketHasBeenSet; }
/**
* <p>If your canary script is located in S3, specify the full bucket name here.
* The bucket must already exist. Specify the full bucket name, including
* <code>s3://</code> as the start of the bucket name.</p>
*/
inline void SetS3Bucket(const Aws::String& value) { m_s3BucketHasBeenSet = true; m_s3Bucket = value; }
/**
* <p>If your canary script is located in S3, specify the full bucket name here.
* The bucket must already exist. Specify the full bucket name, including
* <code>s3://</code> as the start of the bucket name.</p>
*/
inline void SetS3Bucket(Aws::String&& value) { m_s3BucketHasBeenSet = true; m_s3Bucket = std::move(value); }
/**
* <p>If your canary script is located in S3, specify the full bucket name here.
* The bucket must already exist. Specify the full bucket name, including
* <code>s3://</code> as the start of the bucket name.</p>
*/
inline void SetS3Bucket(const char* value) { m_s3BucketHasBeenSet = true; m_s3Bucket.assign(value); }
/**
* <p>If your canary script is located in S3, specify the full bucket name here.
* The bucket must already exist. Specify the full bucket name, including
* <code>s3://</code> as the start of the bucket name.</p>
*/
inline CanaryCodeInput& WithS3Bucket(const Aws::String& value) { SetS3Bucket(value); return *this;}
/**
* <p>If your canary script is located in S3, specify the full bucket name here.
* The bucket must already exist. Specify the full bucket name, including
* <code>s3://</code> as the start of the bucket name.</p>
*/
inline CanaryCodeInput& WithS3Bucket(Aws::String&& value) { SetS3Bucket(std::move(value)); return *this;}
/**
* <p>If your canary script is located in S3, specify the full bucket name here.
* The bucket must already exist. Specify the full bucket name, including
* <code>s3://</code> as the start of the bucket name.</p>
*/
inline CanaryCodeInput& WithS3Bucket(const char* value) { SetS3Bucket(value); return *this;}
/**
* <p>The S3 key of your script. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingObjects.html">Working
* with Amazon S3 Objects</a>.</p>
*/
inline const Aws::String& GetS3Key() const{ return m_s3Key; }
/**
* <p>The S3 key of your script. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingObjects.html">Working
* with Amazon S3 Objects</a>.</p>
*/
inline bool S3KeyHasBeenSet() const { return m_s3KeyHasBeenSet; }
/**
* <p>The S3 key of your script. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingObjects.html">Working
* with Amazon S3 Objects</a>.</p>
*/
inline void SetS3Key(const Aws::String& value) { m_s3KeyHasBeenSet = true; m_s3Key = value; }
/**
* <p>The S3 key of your script. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingObjects.html">Working
* with Amazon S3 Objects</a>.</p>
*/
inline void SetS3Key(Aws::String&& value) { m_s3KeyHasBeenSet = true; m_s3Key = std::move(value); }
/**
* <p>The S3 key of your script. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingObjects.html">Working
* with Amazon S3 Objects</a>.</p>
*/
inline void SetS3Key(const char* value) { m_s3KeyHasBeenSet = true; m_s3Key.assign(value); }
/**
* <p>The S3 key of your script. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingObjects.html">Working
* with Amazon S3 Objects</a>.</p>
*/
inline CanaryCodeInput& WithS3Key(const Aws::String& value) { SetS3Key(value); return *this;}
/**
* <p>The S3 key of your script. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingObjects.html">Working
* with Amazon S3 Objects</a>.</p>
*/
inline CanaryCodeInput& WithS3Key(Aws::String&& value) { SetS3Key(std::move(value)); return *this;}
/**
* <p>The S3 key of your script. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingObjects.html">Working
* with Amazon S3 Objects</a>.</p>
*/
inline CanaryCodeInput& WithS3Key(const char* value) { SetS3Key(value); return *this;}
/**
* <p>The S3 version ID of your script.</p>
*/
inline const Aws::String& GetS3Version() const{ return m_s3Version; }
/**
* <p>The S3 version ID of your script.</p>
*/
inline bool S3VersionHasBeenSet() const { return m_s3VersionHasBeenSet; }
/**
* <p>The S3 version ID of your script.</p>
*/
inline void SetS3Version(const Aws::String& value) { m_s3VersionHasBeenSet = true; m_s3Version = value; }
/**
* <p>The S3 version ID of your script.</p>
*/
inline void SetS3Version(Aws::String&& value) { m_s3VersionHasBeenSet = true; m_s3Version = std::move(value); }
/**
* <p>The S3 version ID of your script.</p>
*/
inline void SetS3Version(const char* value) { m_s3VersionHasBeenSet = true; m_s3Version.assign(value); }
/**
* <p>The S3 version ID of your script.</p>
*/
inline CanaryCodeInput& WithS3Version(const Aws::String& value) { SetS3Version(value); return *this;}
/**
* <p>The S3 version ID of your script.</p>
*/
inline CanaryCodeInput& WithS3Version(Aws::String&& value) { SetS3Version(std::move(value)); return *this;}
/**
* <p>The S3 version ID of your script.</p>
*/
inline CanaryCodeInput& WithS3Version(const char* value) { SetS3Version(value); return *this;}
/**
* <p>If you input your canary script directly into the canary instead of referring
* to an S3 location, the value of this parameter is the .zip file that contains
* the script. It can be up to 5 MB.</p>
*/
inline const Aws::Utils::ByteBuffer& GetZipFile() const{ return m_zipFile; }
/**
* <p>If you input your canary script directly into the canary instead of referring
* to an S3 location, the value of this parameter is the .zip file that contains
* the script. It can be up to 5 MB.</p>
*/
inline bool ZipFileHasBeenSet() const { return m_zipFileHasBeenSet; }
/**
* <p>If you input your canary script directly into the canary instead of referring
* to an S3 location, the value of this parameter is the .zip file that contains
* the script. It can be up to 5 MB.</p>
*/
inline void SetZipFile(const Aws::Utils::ByteBuffer& value) { m_zipFileHasBeenSet = true; m_zipFile = value; }
/**
* <p>If you input your canary script directly into the canary instead of referring
* to an S3 location, the value of this parameter is the .zip file that contains
* the script. It can be up to 5 MB.</p>
*/
inline void SetZipFile(Aws::Utils::ByteBuffer&& value) { m_zipFileHasBeenSet = true; m_zipFile = std::move(value); }
/**
* <p>If you input your canary script directly into the canary instead of referring
* to an S3 location, the value of this parameter is the .zip file that contains
* the script. It can be up to 5 MB.</p>
*/
inline CanaryCodeInput& WithZipFile(const Aws::Utils::ByteBuffer& value) { SetZipFile(value); return *this;}
/**
* <p>If you input your canary script directly into the canary instead of referring
* to an S3 location, the value of this parameter is the .zip file that contains
* the script. It can be up to 5 MB.</p>
*/
inline CanaryCodeInput& WithZipFile(Aws::Utils::ByteBuffer&& value) { SetZipFile(std::move(value)); return *this;}
/**
* <p>The entry point to use for the source code when running the canary. This
* value must end with the string <code>.handler</code>.</p>
*/
inline const Aws::String& GetHandler() const{ return m_handler; }
/**
* <p>The entry point to use for the source code when running the canary. This
* value must end with the string <code>.handler</code>.</p>
*/
inline bool HandlerHasBeenSet() const { return m_handlerHasBeenSet; }
/**
* <p>The entry point to use for the source code when running the canary. This
* value must end with the string <code>.handler</code>.</p>
*/
inline void SetHandler(const Aws::String& value) { m_handlerHasBeenSet = true; m_handler = value; }
/**
* <p>The entry point to use for the source code when running the canary. This
* value must end with the string <code>.handler</code>.</p>
*/
inline void SetHandler(Aws::String&& value) { m_handlerHasBeenSet = true; m_handler = std::move(value); }
/**
* <p>The entry point to use for the source code when running the canary. This
* value must end with the string <code>.handler</code>.</p>
*/
inline void SetHandler(const char* value) { m_handlerHasBeenSet = true; m_handler.assign(value); }
/**
* <p>The entry point to use for the source code when running the canary. This
* value must end with the string <code>.handler</code>.</p>
*/
inline CanaryCodeInput& WithHandler(const Aws::String& value) { SetHandler(value); return *this;}
/**
* <p>The entry point to use for the source code when running the canary. This
* value must end with the string <code>.handler</code>.</p>
*/
inline CanaryCodeInput& WithHandler(Aws::String&& value) { SetHandler(std::move(value)); return *this;}
/**
* <p>The entry point to use for the source code when running the canary. This
* value must end with the string <code>.handler</code>.</p>
*/
inline CanaryCodeInput& WithHandler(const char* value) { SetHandler(value); return *this;}
private:
Aws::String m_s3Bucket;
bool m_s3BucketHasBeenSet;
Aws::String m_s3Key;
bool m_s3KeyHasBeenSet;
Aws::String m_s3Version;
bool m_s3VersionHasBeenSet;
Aws::Utils::ByteBuffer m_zipFile;
bool m_zipFileHasBeenSet;
Aws::String m_handler;
bool m_handlerHasBeenSet;
};
} // namespace Model
} // namespace Synthetics
} // namespace Aws

View File

@@ -0,0 +1,141 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace Synthetics
{
namespace Model
{
/**
* <p>This structure contains information about the canary's Lambda handler and
* where its code is stored by CloudWatch Synthetics.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/CanaryCodeOutput">AWS
* API Reference</a></p>
*/
class AWS_SYNTHETICS_API CanaryCodeOutput
{
public:
CanaryCodeOutput();
CanaryCodeOutput(Aws::Utils::Json::JsonView jsonValue);
CanaryCodeOutput& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>The ARN of the Lambda layer where Synthetics stores the canary script
* code.</p>
*/
inline const Aws::String& GetSourceLocationArn() const{ return m_sourceLocationArn; }
/**
* <p>The ARN of the Lambda layer where Synthetics stores the canary script
* code.</p>
*/
inline bool SourceLocationArnHasBeenSet() const { return m_sourceLocationArnHasBeenSet; }
/**
* <p>The ARN of the Lambda layer where Synthetics stores the canary script
* code.</p>
*/
inline void SetSourceLocationArn(const Aws::String& value) { m_sourceLocationArnHasBeenSet = true; m_sourceLocationArn = value; }
/**
* <p>The ARN of the Lambda layer where Synthetics stores the canary script
* code.</p>
*/
inline void SetSourceLocationArn(Aws::String&& value) { m_sourceLocationArnHasBeenSet = true; m_sourceLocationArn = std::move(value); }
/**
* <p>The ARN of the Lambda layer where Synthetics stores the canary script
* code.</p>
*/
inline void SetSourceLocationArn(const char* value) { m_sourceLocationArnHasBeenSet = true; m_sourceLocationArn.assign(value); }
/**
* <p>The ARN of the Lambda layer where Synthetics stores the canary script
* code.</p>
*/
inline CanaryCodeOutput& WithSourceLocationArn(const Aws::String& value) { SetSourceLocationArn(value); return *this;}
/**
* <p>The ARN of the Lambda layer where Synthetics stores the canary script
* code.</p>
*/
inline CanaryCodeOutput& WithSourceLocationArn(Aws::String&& value) { SetSourceLocationArn(std::move(value)); return *this;}
/**
* <p>The ARN of the Lambda layer where Synthetics stores the canary script
* code.</p>
*/
inline CanaryCodeOutput& WithSourceLocationArn(const char* value) { SetSourceLocationArn(value); return *this;}
/**
* <p>The entry point to use for the source code when running the canary.</p>
*/
inline const Aws::String& GetHandler() const{ return m_handler; }
/**
* <p>The entry point to use for the source code when running the canary.</p>
*/
inline bool HandlerHasBeenSet() const { return m_handlerHasBeenSet; }
/**
* <p>The entry point to use for the source code when running the canary.</p>
*/
inline void SetHandler(const Aws::String& value) { m_handlerHasBeenSet = true; m_handler = value; }
/**
* <p>The entry point to use for the source code when running the canary.</p>
*/
inline void SetHandler(Aws::String&& value) { m_handlerHasBeenSet = true; m_handler = std::move(value); }
/**
* <p>The entry point to use for the source code when running the canary.</p>
*/
inline void SetHandler(const char* value) { m_handlerHasBeenSet = true; m_handler.assign(value); }
/**
* <p>The entry point to use for the source code when running the canary.</p>
*/
inline CanaryCodeOutput& WithHandler(const Aws::String& value) { SetHandler(value); return *this;}
/**
* <p>The entry point to use for the source code when running the canary.</p>
*/
inline CanaryCodeOutput& WithHandler(Aws::String&& value) { SetHandler(std::move(value)); return *this;}
/**
* <p>The entry point to use for the source code when running the canary.</p>
*/
inline CanaryCodeOutput& WithHandler(const char* value) { SetHandler(value); return *this;}
private:
Aws::String m_sourceLocationArn;
bool m_sourceLocationArnHasBeenSet;
Aws::String m_handler;
bool m_handlerHasBeenSet;
};
} // namespace Model
} // namespace Synthetics
} // namespace Aws

View File

@@ -0,0 +1,124 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/synthetics/model/CanaryRun.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace Synthetics
{
namespace Model
{
/**
* <p>This structure contains information about the most recent run of a single
* canary.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/CanaryLastRun">AWS
* API Reference</a></p>
*/
class AWS_SYNTHETICS_API CanaryLastRun
{
public:
CanaryLastRun();
CanaryLastRun(Aws::Utils::Json::JsonView jsonValue);
CanaryLastRun& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>The name of the canary.</p>
*/
inline const Aws::String& GetCanaryName() const{ return m_canaryName; }
/**
* <p>The name of the canary.</p>
*/
inline bool CanaryNameHasBeenSet() const { return m_canaryNameHasBeenSet; }
/**
* <p>The name of the canary.</p>
*/
inline void SetCanaryName(const Aws::String& value) { m_canaryNameHasBeenSet = true; m_canaryName = value; }
/**
* <p>The name of the canary.</p>
*/
inline void SetCanaryName(Aws::String&& value) { m_canaryNameHasBeenSet = true; m_canaryName = std::move(value); }
/**
* <p>The name of the canary.</p>
*/
inline void SetCanaryName(const char* value) { m_canaryNameHasBeenSet = true; m_canaryName.assign(value); }
/**
* <p>The name of the canary.</p>
*/
inline CanaryLastRun& WithCanaryName(const Aws::String& value) { SetCanaryName(value); return *this;}
/**
* <p>The name of the canary.</p>
*/
inline CanaryLastRun& WithCanaryName(Aws::String&& value) { SetCanaryName(std::move(value)); return *this;}
/**
* <p>The name of the canary.</p>
*/
inline CanaryLastRun& WithCanaryName(const char* value) { SetCanaryName(value); return *this;}
/**
* <p>The results from this canary's most recent run.</p>
*/
inline const CanaryRun& GetLastRun() const{ return m_lastRun; }
/**
* <p>The results from this canary's most recent run.</p>
*/
inline bool LastRunHasBeenSet() const { return m_lastRunHasBeenSet; }
/**
* <p>The results from this canary's most recent run.</p>
*/
inline void SetLastRun(const CanaryRun& value) { m_lastRunHasBeenSet = true; m_lastRun = value; }
/**
* <p>The results from this canary's most recent run.</p>
*/
inline void SetLastRun(CanaryRun&& value) { m_lastRunHasBeenSet = true; m_lastRun = std::move(value); }
/**
* <p>The results from this canary's most recent run.</p>
*/
inline CanaryLastRun& WithLastRun(const CanaryRun& value) { SetLastRun(value); return *this;}
/**
* <p>The results from this canary's most recent run.</p>
*/
inline CanaryLastRun& WithLastRun(CanaryRun&& value) { SetLastRun(std::move(value)); return *this;}
private:
Aws::String m_canaryName;
bool m_canaryNameHasBeenSet;
CanaryRun m_lastRun;
bool m_lastRunHasBeenSet;
};
} // namespace Model
} // namespace Synthetics
} // namespace Aws

View File

@@ -0,0 +1,211 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/synthetics/model/CanaryRunStatus.h>
#include <aws/synthetics/model/CanaryRunTimeline.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace Synthetics
{
namespace Model
{
/**
* <p>This structure contains the details about one run of one
* canary.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/CanaryRun">AWS
* API Reference</a></p>
*/
class AWS_SYNTHETICS_API CanaryRun
{
public:
CanaryRun();
CanaryRun(Aws::Utils::Json::JsonView jsonValue);
CanaryRun& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>The name of the canary.</p>
*/
inline const Aws::String& GetName() const{ return m_name; }
/**
* <p>The name of the canary.</p>
*/
inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
/**
* <p>The name of the canary.</p>
*/
inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; }
/**
* <p>The name of the canary.</p>
*/
inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); }
/**
* <p>The name of the canary.</p>
*/
inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); }
/**
* <p>The name of the canary.</p>
*/
inline CanaryRun& WithName(const Aws::String& value) { SetName(value); return *this;}
/**
* <p>The name of the canary.</p>
*/
inline CanaryRun& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;}
/**
* <p>The name of the canary.</p>
*/
inline CanaryRun& WithName(const char* value) { SetName(value); return *this;}
/**
* <p>The status of this run.</p>
*/
inline const CanaryRunStatus& GetStatus() const{ return m_status; }
/**
* <p>The status of this run.</p>
*/
inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
/**
* <p>The status of this run.</p>
*/
inline void SetStatus(const CanaryRunStatus& value) { m_statusHasBeenSet = true; m_status = value; }
/**
* <p>The status of this run.</p>
*/
inline void SetStatus(CanaryRunStatus&& value) { m_statusHasBeenSet = true; m_status = std::move(value); }
/**
* <p>The status of this run.</p>
*/
inline CanaryRun& WithStatus(const CanaryRunStatus& value) { SetStatus(value); return *this;}
/**
* <p>The status of this run.</p>
*/
inline CanaryRun& WithStatus(CanaryRunStatus&& value) { SetStatus(std::move(value)); return *this;}
/**
* <p>A structure that contains the start and end times of this run.</p>
*/
inline const CanaryRunTimeline& GetTimeline() const{ return m_timeline; }
/**
* <p>A structure that contains the start and end times of this run.</p>
*/
inline bool TimelineHasBeenSet() const { return m_timelineHasBeenSet; }
/**
* <p>A structure that contains the start and end times of this run.</p>
*/
inline void SetTimeline(const CanaryRunTimeline& value) { m_timelineHasBeenSet = true; m_timeline = value; }
/**
* <p>A structure that contains the start and end times of this run.</p>
*/
inline void SetTimeline(CanaryRunTimeline&& value) { m_timelineHasBeenSet = true; m_timeline = std::move(value); }
/**
* <p>A structure that contains the start and end times of this run.</p>
*/
inline CanaryRun& WithTimeline(const CanaryRunTimeline& value) { SetTimeline(value); return *this;}
/**
* <p>A structure that contains the start and end times of this run.</p>
*/
inline CanaryRun& WithTimeline(CanaryRunTimeline&& value) { SetTimeline(std::move(value)); return *this;}
/**
* <p>The location where the canary stored artifacts from the run. Artifacts
* include the log file, screenshots, and HAR files.</p>
*/
inline const Aws::String& GetArtifactS3Location() const{ return m_artifactS3Location; }
/**
* <p>The location where the canary stored artifacts from the run. Artifacts
* include the log file, screenshots, and HAR files.</p>
*/
inline bool ArtifactS3LocationHasBeenSet() const { return m_artifactS3LocationHasBeenSet; }
/**
* <p>The location where the canary stored artifacts from the run. Artifacts
* include the log file, screenshots, and HAR files.</p>
*/
inline void SetArtifactS3Location(const Aws::String& value) { m_artifactS3LocationHasBeenSet = true; m_artifactS3Location = value; }
/**
* <p>The location where the canary stored artifacts from the run. Artifacts
* include the log file, screenshots, and HAR files.</p>
*/
inline void SetArtifactS3Location(Aws::String&& value) { m_artifactS3LocationHasBeenSet = true; m_artifactS3Location = std::move(value); }
/**
* <p>The location where the canary stored artifacts from the run. Artifacts
* include the log file, screenshots, and HAR files.</p>
*/
inline void SetArtifactS3Location(const char* value) { m_artifactS3LocationHasBeenSet = true; m_artifactS3Location.assign(value); }
/**
* <p>The location where the canary stored artifacts from the run. Artifacts
* include the log file, screenshots, and HAR files.</p>
*/
inline CanaryRun& WithArtifactS3Location(const Aws::String& value) { SetArtifactS3Location(value); return *this;}
/**
* <p>The location where the canary stored artifacts from the run. Artifacts
* include the log file, screenshots, and HAR files.</p>
*/
inline CanaryRun& WithArtifactS3Location(Aws::String&& value) { SetArtifactS3Location(std::move(value)); return *this;}
/**
* <p>The location where the canary stored artifacts from the run. Artifacts
* include the log file, screenshots, and HAR files.</p>
*/
inline CanaryRun& WithArtifactS3Location(const char* value) { SetArtifactS3Location(value); return *this;}
private:
Aws::String m_name;
bool m_nameHasBeenSet;
CanaryRunStatus m_status;
bool m_statusHasBeenSet;
CanaryRunTimeline m_timeline;
bool m_timelineHasBeenSet;
Aws::String m_artifactS3Location;
bool m_artifactS3LocationHasBeenSet;
};
} // namespace Model
} // namespace Synthetics
} // namespace Aws

View File

@@ -0,0 +1,103 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace Synthetics
{
namespace Model
{
/**
* <p>A structure that contains input information for a canary run.</p><p><h3>See
* Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/CanaryRunConfigInput">AWS
* API Reference</a></p>
*/
class AWS_SYNTHETICS_API CanaryRunConfigInput
{
public:
CanaryRunConfigInput();
CanaryRunConfigInput(Aws::Utils::Json::JsonView jsonValue);
CanaryRunConfigInput& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>How long the canary is allowed to run before it must stop. If you omit this
* field, the frequency of the canary is used as this value, up to a maximum of 14
* minutes.</p>
*/
inline int GetTimeoutInSeconds() const{ return m_timeoutInSeconds; }
/**
* <p>How long the canary is allowed to run before it must stop. If you omit this
* field, the frequency of the canary is used as this value, up to a maximum of 14
* minutes.</p>
*/
inline bool TimeoutInSecondsHasBeenSet() const { return m_timeoutInSecondsHasBeenSet; }
/**
* <p>How long the canary is allowed to run before it must stop. If you omit this
* field, the frequency of the canary is used as this value, up to a maximum of 14
* minutes.</p>
*/
inline void SetTimeoutInSeconds(int value) { m_timeoutInSecondsHasBeenSet = true; m_timeoutInSeconds = value; }
/**
* <p>How long the canary is allowed to run before it must stop. If you omit this
* field, the frequency of the canary is used as this value, up to a maximum of 14
* minutes.</p>
*/
inline CanaryRunConfigInput& WithTimeoutInSeconds(int value) { SetTimeoutInSeconds(value); return *this;}
/**
* <p>The maximum amount of memory available to the canary while it is running, in
* MB. The value you specify must be a multiple of 64.</p>
*/
inline int GetMemoryInMB() const{ return m_memoryInMB; }
/**
* <p>The maximum amount of memory available to the canary while it is running, in
* MB. The value you specify must be a multiple of 64.</p>
*/
inline bool MemoryInMBHasBeenSet() const { return m_memoryInMBHasBeenSet; }
/**
* <p>The maximum amount of memory available to the canary while it is running, in
* MB. The value you specify must be a multiple of 64.</p>
*/
inline void SetMemoryInMB(int value) { m_memoryInMBHasBeenSet = true; m_memoryInMB = value; }
/**
* <p>The maximum amount of memory available to the canary while it is running, in
* MB. The value you specify must be a multiple of 64.</p>
*/
inline CanaryRunConfigInput& WithMemoryInMB(int value) { SetMemoryInMB(value); return *this;}
private:
int m_timeoutInSeconds;
bool m_timeoutInSecondsHasBeenSet;
int m_memoryInMB;
bool m_memoryInMBHasBeenSet;
};
} // namespace Model
} // namespace Synthetics
} // namespace Aws

View File

@@ -0,0 +1,95 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace Synthetics
{
namespace Model
{
/**
* <p>A structure that contains information for a canary run.</p><p><h3>See
* Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/CanaryRunConfigOutput">AWS
* API Reference</a></p>
*/
class AWS_SYNTHETICS_API CanaryRunConfigOutput
{
public:
CanaryRunConfigOutput();
CanaryRunConfigOutput(Aws::Utils::Json::JsonView jsonValue);
CanaryRunConfigOutput& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>How long the canary is allowed to run before it must stop.</p>
*/
inline int GetTimeoutInSeconds() const{ return m_timeoutInSeconds; }
/**
* <p>How long the canary is allowed to run before it must stop.</p>
*/
inline bool TimeoutInSecondsHasBeenSet() const { return m_timeoutInSecondsHasBeenSet; }
/**
* <p>How long the canary is allowed to run before it must stop.</p>
*/
inline void SetTimeoutInSeconds(int value) { m_timeoutInSecondsHasBeenSet = true; m_timeoutInSeconds = value; }
/**
* <p>How long the canary is allowed to run before it must stop.</p>
*/
inline CanaryRunConfigOutput& WithTimeoutInSeconds(int value) { SetTimeoutInSeconds(value); return *this;}
/**
* <p>The maximum amount of memory available to the canary while it is running, in
* MB. The value you must be a multiple of 64.</p>
*/
inline int GetMemoryInMB() const{ return m_memoryInMB; }
/**
* <p>The maximum amount of memory available to the canary while it is running, in
* MB. The value you must be a multiple of 64.</p>
*/
inline bool MemoryInMBHasBeenSet() const { return m_memoryInMBHasBeenSet; }
/**
* <p>The maximum amount of memory available to the canary while it is running, in
* MB. The value you must be a multiple of 64.</p>
*/
inline void SetMemoryInMB(int value) { m_memoryInMBHasBeenSet = true; m_memoryInMB = value; }
/**
* <p>The maximum amount of memory available to the canary while it is running, in
* MB. The value you must be a multiple of 64.</p>
*/
inline CanaryRunConfigOutput& WithMemoryInMB(int value) { SetMemoryInMB(value); return *this;}
private:
int m_timeoutInSeconds;
bool m_timeoutInSecondsHasBeenSet;
int m_memoryInMB;
bool m_memoryInMBHasBeenSet;
};
} // namespace Model
} // namespace Synthetics
} // namespace Aws

View File

@@ -0,0 +1,32 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
namespace Aws
{
namespace Synthetics
{
namespace Model
{
enum class CanaryRunState
{
NOT_SET,
RUNNING,
PASSED,
FAILED
};
namespace CanaryRunStateMapper
{
AWS_SYNTHETICS_API CanaryRunState GetCanaryRunStateForName(const Aws::String& name);
AWS_SYNTHETICS_API Aws::String GetNameForCanaryRunState(CanaryRunState value);
} // namespace CanaryRunStateMapper
} // namespace Model
} // namespace Synthetics
} // namespace Aws

View File

@@ -0,0 +1,31 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
namespace Aws
{
namespace Synthetics
{
namespace Model
{
enum class CanaryRunStateReasonCode
{
NOT_SET,
CANARY_FAILURE,
EXECUTION_FAILURE
};
namespace CanaryRunStateReasonCodeMapper
{
AWS_SYNTHETICS_API CanaryRunStateReasonCode GetCanaryRunStateReasonCodeForName(const Aws::String& name);
AWS_SYNTHETICS_API Aws::String GetNameForCanaryRunStateReasonCode(CanaryRunStateReasonCode value);
} // namespace CanaryRunStateReasonCodeMapper
} // namespace Model
} // namespace Synthetics
} // namespace Aws

View File

@@ -0,0 +1,179 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
#include <aws/synthetics/model/CanaryRunState.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/synthetics/model/CanaryRunStateReasonCode.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace Synthetics
{
namespace Model
{
/**
* <p>This structure contains the status information about a canary
* run.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/CanaryRunStatus">AWS
* API Reference</a></p>
*/
class AWS_SYNTHETICS_API CanaryRunStatus
{
public:
CanaryRunStatus();
CanaryRunStatus(Aws::Utils::Json::JsonView jsonValue);
CanaryRunStatus& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>The current state of the run.</p>
*/
inline const CanaryRunState& GetState() const{ return m_state; }
/**
* <p>The current state of the run.</p>
*/
inline bool StateHasBeenSet() const { return m_stateHasBeenSet; }
/**
* <p>The current state of the run.</p>
*/
inline void SetState(const CanaryRunState& value) { m_stateHasBeenSet = true; m_state = value; }
/**
* <p>The current state of the run.</p>
*/
inline void SetState(CanaryRunState&& value) { m_stateHasBeenSet = true; m_state = std::move(value); }
/**
* <p>The current state of the run.</p>
*/
inline CanaryRunStatus& WithState(const CanaryRunState& value) { SetState(value); return *this;}
/**
* <p>The current state of the run.</p>
*/
inline CanaryRunStatus& WithState(CanaryRunState&& value) { SetState(std::move(value)); return *this;}
/**
* <p>If run of the canary failed, this field contains the reason for the
* error.</p>
*/
inline const Aws::String& GetStateReason() const{ return m_stateReason; }
/**
* <p>If run of the canary failed, this field contains the reason for the
* error.</p>
*/
inline bool StateReasonHasBeenSet() const { return m_stateReasonHasBeenSet; }
/**
* <p>If run of the canary failed, this field contains the reason for the
* error.</p>
*/
inline void SetStateReason(const Aws::String& value) { m_stateReasonHasBeenSet = true; m_stateReason = value; }
/**
* <p>If run of the canary failed, this field contains the reason for the
* error.</p>
*/
inline void SetStateReason(Aws::String&& value) { m_stateReasonHasBeenSet = true; m_stateReason = std::move(value); }
/**
* <p>If run of the canary failed, this field contains the reason for the
* error.</p>
*/
inline void SetStateReason(const char* value) { m_stateReasonHasBeenSet = true; m_stateReason.assign(value); }
/**
* <p>If run of the canary failed, this field contains the reason for the
* error.</p>
*/
inline CanaryRunStatus& WithStateReason(const Aws::String& value) { SetStateReason(value); return *this;}
/**
* <p>If run of the canary failed, this field contains the reason for the
* error.</p>
*/
inline CanaryRunStatus& WithStateReason(Aws::String&& value) { SetStateReason(std::move(value)); return *this;}
/**
* <p>If run of the canary failed, this field contains the reason for the
* error.</p>
*/
inline CanaryRunStatus& WithStateReason(const char* value) { SetStateReason(value); return *this;}
/**
* <p>If this value is <code>CANARY_FAILURE</code>, an exception occurred in the
* canary code. If this value is <code>EXECUTION_FAILURE</code>, an exception
* occurred in CloudWatch Synthetics.</p>
*/
inline const CanaryRunStateReasonCode& GetStateReasonCode() const{ return m_stateReasonCode; }
/**
* <p>If this value is <code>CANARY_FAILURE</code>, an exception occurred in the
* canary code. If this value is <code>EXECUTION_FAILURE</code>, an exception
* occurred in CloudWatch Synthetics.</p>
*/
inline bool StateReasonCodeHasBeenSet() const { return m_stateReasonCodeHasBeenSet; }
/**
* <p>If this value is <code>CANARY_FAILURE</code>, an exception occurred in the
* canary code. If this value is <code>EXECUTION_FAILURE</code>, an exception
* occurred in CloudWatch Synthetics.</p>
*/
inline void SetStateReasonCode(const CanaryRunStateReasonCode& value) { m_stateReasonCodeHasBeenSet = true; m_stateReasonCode = value; }
/**
* <p>If this value is <code>CANARY_FAILURE</code>, an exception occurred in the
* canary code. If this value is <code>EXECUTION_FAILURE</code>, an exception
* occurred in CloudWatch Synthetics.</p>
*/
inline void SetStateReasonCode(CanaryRunStateReasonCode&& value) { m_stateReasonCodeHasBeenSet = true; m_stateReasonCode = std::move(value); }
/**
* <p>If this value is <code>CANARY_FAILURE</code>, an exception occurred in the
* canary code. If this value is <code>EXECUTION_FAILURE</code>, an exception
* occurred in CloudWatch Synthetics.</p>
*/
inline CanaryRunStatus& WithStateReasonCode(const CanaryRunStateReasonCode& value) { SetStateReasonCode(value); return *this;}
/**
* <p>If this value is <code>CANARY_FAILURE</code>, an exception occurred in the
* canary code. If this value is <code>EXECUTION_FAILURE</code>, an exception
* occurred in CloudWatch Synthetics.</p>
*/
inline CanaryRunStatus& WithStateReasonCode(CanaryRunStateReasonCode&& value) { SetStateReasonCode(std::move(value)); return *this;}
private:
CanaryRunState m_state;
bool m_stateHasBeenSet;
Aws::String m_stateReason;
bool m_stateReasonHasBeenSet;
CanaryRunStateReasonCode m_stateReasonCode;
bool m_stateReasonCodeHasBeenSet;
};
} // namespace Model
} // namespace Synthetics
} // namespace Aws

View File

@@ -0,0 +1,113 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
#include <aws/core/utils/DateTime.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace Synthetics
{
namespace Model
{
/**
* <p>This structure contains the start and end times of a single canary
* run.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/CanaryRunTimeline">AWS
* API Reference</a></p>
*/
class AWS_SYNTHETICS_API CanaryRunTimeline
{
public:
CanaryRunTimeline();
CanaryRunTimeline(Aws::Utils::Json::JsonView jsonValue);
CanaryRunTimeline& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>The start time of the run.</p>
*/
inline const Aws::Utils::DateTime& GetStarted() const{ return m_started; }
/**
* <p>The start time of the run.</p>
*/
inline bool StartedHasBeenSet() const { return m_startedHasBeenSet; }
/**
* <p>The start time of the run.</p>
*/
inline void SetStarted(const Aws::Utils::DateTime& value) { m_startedHasBeenSet = true; m_started = value; }
/**
* <p>The start time of the run.</p>
*/
inline void SetStarted(Aws::Utils::DateTime&& value) { m_startedHasBeenSet = true; m_started = std::move(value); }
/**
* <p>The start time of the run.</p>
*/
inline CanaryRunTimeline& WithStarted(const Aws::Utils::DateTime& value) { SetStarted(value); return *this;}
/**
* <p>The start time of the run.</p>
*/
inline CanaryRunTimeline& WithStarted(Aws::Utils::DateTime&& value) { SetStarted(std::move(value)); return *this;}
/**
* <p>The end time of the run.</p>
*/
inline const Aws::Utils::DateTime& GetCompleted() const{ return m_completed; }
/**
* <p>The end time of the run.</p>
*/
inline bool CompletedHasBeenSet() const { return m_completedHasBeenSet; }
/**
* <p>The end time of the run.</p>
*/
inline void SetCompleted(const Aws::Utils::DateTime& value) { m_completedHasBeenSet = true; m_completed = value; }
/**
* <p>The end time of the run.</p>
*/
inline void SetCompleted(Aws::Utils::DateTime&& value) { m_completedHasBeenSet = true; m_completed = std::move(value); }
/**
* <p>The end time of the run.</p>
*/
inline CanaryRunTimeline& WithCompleted(const Aws::Utils::DateTime& value) { SetCompleted(value); return *this;}
/**
* <p>The end time of the run.</p>
*/
inline CanaryRunTimeline& WithCompleted(Aws::Utils::DateTime&& value) { SetCompleted(std::move(value)); return *this;}
private:
Aws::Utils::DateTime m_started;
bool m_startedHasBeenSet;
Aws::Utils::DateTime m_completed;
bool m_completedHasBeenSet;
};
} // namespace Model
} // namespace Synthetics
} // namespace Aws

View File

@@ -0,0 +1,189 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace Synthetics
{
namespace Model
{
/**
* <p>This structure specifies how often a canary is to make runs and the date and
* time when it should stop making runs.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/CanaryScheduleInput">AWS
* API Reference</a></p>
*/
class AWS_SYNTHETICS_API CanaryScheduleInput
{
public:
CanaryScheduleInput();
CanaryScheduleInput(Aws::Utils::Json::JsonView jsonValue);
CanaryScheduleInput& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>A rate expression that defines how often the canary is to run. The syntax is
* <code>rate(<i>number unit</i>)</code>. <i>unit</i> can be <code>minute</code>,
* <code>minutes</code>, or <code>hour</code>. </p> <p>For example, <code>rate(1
* minute)</code> runs the canary once a minute, <code>rate(10 minutes)</code> runs
* it once every 10 minutes, and <code>rate(1 hour)</code> runs it once every hour.
* You can specify a frequency between <code>rate(1 minute)</code> and <code>rate(1
* hour)</code>.</p> <p>Specifying <code>rate(0 minute)</code> or <code>rate(0
* hour)</code> is a special value that causes the canary to run only once when it
* is started.</p>
*/
inline const Aws::String& GetExpression() const{ return m_expression; }
/**
* <p>A rate expression that defines how often the canary is to run. The syntax is
* <code>rate(<i>number unit</i>)</code>. <i>unit</i> can be <code>minute</code>,
* <code>minutes</code>, or <code>hour</code>. </p> <p>For example, <code>rate(1
* minute)</code> runs the canary once a minute, <code>rate(10 minutes)</code> runs
* it once every 10 minutes, and <code>rate(1 hour)</code> runs it once every hour.
* You can specify a frequency between <code>rate(1 minute)</code> and <code>rate(1
* hour)</code>.</p> <p>Specifying <code>rate(0 minute)</code> or <code>rate(0
* hour)</code> is a special value that causes the canary to run only once when it
* is started.</p>
*/
inline bool ExpressionHasBeenSet() const { return m_expressionHasBeenSet; }
/**
* <p>A rate expression that defines how often the canary is to run. The syntax is
* <code>rate(<i>number unit</i>)</code>. <i>unit</i> can be <code>minute</code>,
* <code>minutes</code>, or <code>hour</code>. </p> <p>For example, <code>rate(1
* minute)</code> runs the canary once a minute, <code>rate(10 minutes)</code> runs
* it once every 10 minutes, and <code>rate(1 hour)</code> runs it once every hour.
* You can specify a frequency between <code>rate(1 minute)</code> and <code>rate(1
* hour)</code>.</p> <p>Specifying <code>rate(0 minute)</code> or <code>rate(0
* hour)</code> is a special value that causes the canary to run only once when it
* is started.</p>
*/
inline void SetExpression(const Aws::String& value) { m_expressionHasBeenSet = true; m_expression = value; }
/**
* <p>A rate expression that defines how often the canary is to run. The syntax is
* <code>rate(<i>number unit</i>)</code>. <i>unit</i> can be <code>minute</code>,
* <code>minutes</code>, or <code>hour</code>. </p> <p>For example, <code>rate(1
* minute)</code> runs the canary once a minute, <code>rate(10 minutes)</code> runs
* it once every 10 minutes, and <code>rate(1 hour)</code> runs it once every hour.
* You can specify a frequency between <code>rate(1 minute)</code> and <code>rate(1
* hour)</code>.</p> <p>Specifying <code>rate(0 minute)</code> or <code>rate(0
* hour)</code> is a special value that causes the canary to run only once when it
* is started.</p>
*/
inline void SetExpression(Aws::String&& value) { m_expressionHasBeenSet = true; m_expression = std::move(value); }
/**
* <p>A rate expression that defines how often the canary is to run. The syntax is
* <code>rate(<i>number unit</i>)</code>. <i>unit</i> can be <code>minute</code>,
* <code>minutes</code>, or <code>hour</code>. </p> <p>For example, <code>rate(1
* minute)</code> runs the canary once a minute, <code>rate(10 minutes)</code> runs
* it once every 10 minutes, and <code>rate(1 hour)</code> runs it once every hour.
* You can specify a frequency between <code>rate(1 minute)</code> and <code>rate(1
* hour)</code>.</p> <p>Specifying <code>rate(0 minute)</code> or <code>rate(0
* hour)</code> is a special value that causes the canary to run only once when it
* is started.</p>
*/
inline void SetExpression(const char* value) { m_expressionHasBeenSet = true; m_expression.assign(value); }
/**
* <p>A rate expression that defines how often the canary is to run. The syntax is
* <code>rate(<i>number unit</i>)</code>. <i>unit</i> can be <code>minute</code>,
* <code>minutes</code>, or <code>hour</code>. </p> <p>For example, <code>rate(1
* minute)</code> runs the canary once a minute, <code>rate(10 minutes)</code> runs
* it once every 10 minutes, and <code>rate(1 hour)</code> runs it once every hour.
* You can specify a frequency between <code>rate(1 minute)</code> and <code>rate(1
* hour)</code>.</p> <p>Specifying <code>rate(0 minute)</code> or <code>rate(0
* hour)</code> is a special value that causes the canary to run only once when it
* is started.</p>
*/
inline CanaryScheduleInput& WithExpression(const Aws::String& value) { SetExpression(value); return *this;}
/**
* <p>A rate expression that defines how often the canary is to run. The syntax is
* <code>rate(<i>number unit</i>)</code>. <i>unit</i> can be <code>minute</code>,
* <code>minutes</code>, or <code>hour</code>. </p> <p>For example, <code>rate(1
* minute)</code> runs the canary once a minute, <code>rate(10 minutes)</code> runs
* it once every 10 minutes, and <code>rate(1 hour)</code> runs it once every hour.
* You can specify a frequency between <code>rate(1 minute)</code> and <code>rate(1
* hour)</code>.</p> <p>Specifying <code>rate(0 minute)</code> or <code>rate(0
* hour)</code> is a special value that causes the canary to run only once when it
* is started.</p>
*/
inline CanaryScheduleInput& WithExpression(Aws::String&& value) { SetExpression(std::move(value)); return *this;}
/**
* <p>A rate expression that defines how often the canary is to run. The syntax is
* <code>rate(<i>number unit</i>)</code>. <i>unit</i> can be <code>minute</code>,
* <code>minutes</code>, or <code>hour</code>. </p> <p>For example, <code>rate(1
* minute)</code> runs the canary once a minute, <code>rate(10 minutes)</code> runs
* it once every 10 minutes, and <code>rate(1 hour)</code> runs it once every hour.
* You can specify a frequency between <code>rate(1 minute)</code> and <code>rate(1
* hour)</code>.</p> <p>Specifying <code>rate(0 minute)</code> or <code>rate(0
* hour)</code> is a special value that causes the canary to run only once when it
* is started.</p>
*/
inline CanaryScheduleInput& WithExpression(const char* value) { SetExpression(value); return *this;}
/**
* <p>How long, in seconds, for the canary to continue making regular runs
* according to the schedule in the <code>Expression</code> value. If you specify
* 0, the canary continues making runs until you stop it. If you omit this field,
* the default of 0 is used.</p>
*/
inline long long GetDurationInSeconds() const{ return m_durationInSeconds; }
/**
* <p>How long, in seconds, for the canary to continue making regular runs
* according to the schedule in the <code>Expression</code> value. If you specify
* 0, the canary continues making runs until you stop it. If you omit this field,
* the default of 0 is used.</p>
*/
inline bool DurationInSecondsHasBeenSet() const { return m_durationInSecondsHasBeenSet; }
/**
* <p>How long, in seconds, for the canary to continue making regular runs
* according to the schedule in the <code>Expression</code> value. If you specify
* 0, the canary continues making runs until you stop it. If you omit this field,
* the default of 0 is used.</p>
*/
inline void SetDurationInSeconds(long long value) { m_durationInSecondsHasBeenSet = true; m_durationInSeconds = value; }
/**
* <p>How long, in seconds, for the canary to continue making regular runs
* according to the schedule in the <code>Expression</code> value. If you specify
* 0, the canary continues making runs until you stop it. If you omit this field,
* the default of 0 is used.</p>
*/
inline CanaryScheduleInput& WithDurationInSeconds(long long value) { SetDurationInSeconds(value); return *this;}
private:
Aws::String m_expression;
bool m_expressionHasBeenSet;
long long m_durationInSeconds;
bool m_durationInSecondsHasBeenSet;
};
} // namespace Model
} // namespace Synthetics
} // namespace Aws

View File

@@ -0,0 +1,178 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace Synthetics
{
namespace Model
{
/**
* <p>How long, in seconds, for the canary to continue making regular runs
* according to the schedule in the <code>Expression</code> value.</p><p><h3>See
* Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/CanaryScheduleOutput">AWS
* API Reference</a></p>
*/
class AWS_SYNTHETICS_API CanaryScheduleOutput
{
public:
CanaryScheduleOutput();
CanaryScheduleOutput(Aws::Utils::Json::JsonView jsonValue);
CanaryScheduleOutput& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>A rate expression that defines how often the canary is to run. The syntax is
* <code>rate(<i>number unit</i>)</code>. <i>unit</i> can be <code>minute</code>,
* <code>minutes</code>, or <code>hour</code>. </p> <p>For example, <code>rate(1
* minute)</code> runs the canary once a minute, <code>rate(10 minutes)</code> runs
* it once every 10 minutes, and <code>rate(1 hour)</code> runs it once every
* hour.</p> <p>Specifying <code>rate(0 minute)</code> or <code>rate(0 hour)</code>
* is a special value that causes the canary to run only once when it is
* started.</p>
*/
inline const Aws::String& GetExpression() const{ return m_expression; }
/**
* <p>A rate expression that defines how often the canary is to run. The syntax is
* <code>rate(<i>number unit</i>)</code>. <i>unit</i> can be <code>minute</code>,
* <code>minutes</code>, or <code>hour</code>. </p> <p>For example, <code>rate(1
* minute)</code> runs the canary once a minute, <code>rate(10 minutes)</code> runs
* it once every 10 minutes, and <code>rate(1 hour)</code> runs it once every
* hour.</p> <p>Specifying <code>rate(0 minute)</code> or <code>rate(0 hour)</code>
* is a special value that causes the canary to run only once when it is
* started.</p>
*/
inline bool ExpressionHasBeenSet() const { return m_expressionHasBeenSet; }
/**
* <p>A rate expression that defines how often the canary is to run. The syntax is
* <code>rate(<i>number unit</i>)</code>. <i>unit</i> can be <code>minute</code>,
* <code>minutes</code>, or <code>hour</code>. </p> <p>For example, <code>rate(1
* minute)</code> runs the canary once a minute, <code>rate(10 minutes)</code> runs
* it once every 10 minutes, and <code>rate(1 hour)</code> runs it once every
* hour.</p> <p>Specifying <code>rate(0 minute)</code> or <code>rate(0 hour)</code>
* is a special value that causes the canary to run only once when it is
* started.</p>
*/
inline void SetExpression(const Aws::String& value) { m_expressionHasBeenSet = true; m_expression = value; }
/**
* <p>A rate expression that defines how often the canary is to run. The syntax is
* <code>rate(<i>number unit</i>)</code>. <i>unit</i> can be <code>minute</code>,
* <code>minutes</code>, or <code>hour</code>. </p> <p>For example, <code>rate(1
* minute)</code> runs the canary once a minute, <code>rate(10 minutes)</code> runs
* it once every 10 minutes, and <code>rate(1 hour)</code> runs it once every
* hour.</p> <p>Specifying <code>rate(0 minute)</code> or <code>rate(0 hour)</code>
* is a special value that causes the canary to run only once when it is
* started.</p>
*/
inline void SetExpression(Aws::String&& value) { m_expressionHasBeenSet = true; m_expression = std::move(value); }
/**
* <p>A rate expression that defines how often the canary is to run. The syntax is
* <code>rate(<i>number unit</i>)</code>. <i>unit</i> can be <code>minute</code>,
* <code>minutes</code>, or <code>hour</code>. </p> <p>For example, <code>rate(1
* minute)</code> runs the canary once a minute, <code>rate(10 minutes)</code> runs
* it once every 10 minutes, and <code>rate(1 hour)</code> runs it once every
* hour.</p> <p>Specifying <code>rate(0 minute)</code> or <code>rate(0 hour)</code>
* is a special value that causes the canary to run only once when it is
* started.</p>
*/
inline void SetExpression(const char* value) { m_expressionHasBeenSet = true; m_expression.assign(value); }
/**
* <p>A rate expression that defines how often the canary is to run. The syntax is
* <code>rate(<i>number unit</i>)</code>. <i>unit</i> can be <code>minute</code>,
* <code>minutes</code>, or <code>hour</code>. </p> <p>For example, <code>rate(1
* minute)</code> runs the canary once a minute, <code>rate(10 minutes)</code> runs
* it once every 10 minutes, and <code>rate(1 hour)</code> runs it once every
* hour.</p> <p>Specifying <code>rate(0 minute)</code> or <code>rate(0 hour)</code>
* is a special value that causes the canary to run only once when it is
* started.</p>
*/
inline CanaryScheduleOutput& WithExpression(const Aws::String& value) { SetExpression(value); return *this;}
/**
* <p>A rate expression that defines how often the canary is to run. The syntax is
* <code>rate(<i>number unit</i>)</code>. <i>unit</i> can be <code>minute</code>,
* <code>minutes</code>, or <code>hour</code>. </p> <p>For example, <code>rate(1
* minute)</code> runs the canary once a minute, <code>rate(10 minutes)</code> runs
* it once every 10 minutes, and <code>rate(1 hour)</code> runs it once every
* hour.</p> <p>Specifying <code>rate(0 minute)</code> or <code>rate(0 hour)</code>
* is a special value that causes the canary to run only once when it is
* started.</p>
*/
inline CanaryScheduleOutput& WithExpression(Aws::String&& value) { SetExpression(std::move(value)); return *this;}
/**
* <p>A rate expression that defines how often the canary is to run. The syntax is
* <code>rate(<i>number unit</i>)</code>. <i>unit</i> can be <code>minute</code>,
* <code>minutes</code>, or <code>hour</code>. </p> <p>For example, <code>rate(1
* minute)</code> runs the canary once a minute, <code>rate(10 minutes)</code> runs
* it once every 10 minutes, and <code>rate(1 hour)</code> runs it once every
* hour.</p> <p>Specifying <code>rate(0 minute)</code> or <code>rate(0 hour)</code>
* is a special value that causes the canary to run only once when it is
* started.</p>
*/
inline CanaryScheduleOutput& WithExpression(const char* value) { SetExpression(value); return *this;}
/**
* <p>How long, in seconds, for the canary to continue making regular runs after it
* was created. The runs are performed according to the schedule in the
* <code>Expression</code> value.</p>
*/
inline long long GetDurationInSeconds() const{ return m_durationInSeconds; }
/**
* <p>How long, in seconds, for the canary to continue making regular runs after it
* was created. The runs are performed according to the schedule in the
* <code>Expression</code> value.</p>
*/
inline bool DurationInSecondsHasBeenSet() const { return m_durationInSecondsHasBeenSet; }
/**
* <p>How long, in seconds, for the canary to continue making regular runs after it
* was created. The runs are performed according to the schedule in the
* <code>Expression</code> value.</p>
*/
inline void SetDurationInSeconds(long long value) { m_durationInSecondsHasBeenSet = true; m_durationInSeconds = value; }
/**
* <p>How long, in seconds, for the canary to continue making regular runs after it
* was created. The runs are performed according to the schedule in the
* <code>Expression</code> value.</p>
*/
inline CanaryScheduleOutput& WithDurationInSeconds(long long value) { SetDurationInSeconds(value); return *this;}
private:
Aws::String m_expression;
bool m_expressionHasBeenSet;
long long m_durationInSeconds;
bool m_durationInSecondsHasBeenSet;
};
} // namespace Model
} // namespace Synthetics
} // namespace Aws

View File

@@ -0,0 +1,38 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
namespace Aws
{
namespace Synthetics
{
namespace Model
{
enum class CanaryState
{
NOT_SET,
CREATING,
READY,
STARTING,
RUNNING,
UPDATING,
STOPPING,
STOPPED,
ERROR_,
DELETING
};
namespace CanaryStateMapper
{
AWS_SYNTHETICS_API CanaryState GetCanaryStateForName(const Aws::String& name);
AWS_SYNTHETICS_API Aws::String GetNameForCanaryState(CanaryState value);
} // namespace CanaryStateMapper
} // namespace Model
} // namespace Synthetics
} // namespace Aws

View File

@@ -0,0 +1,30 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
namespace Aws
{
namespace Synthetics
{
namespace Model
{
enum class CanaryStateReasonCode
{
NOT_SET,
INVALID_PERMISSIONS
};
namespace CanaryStateReasonCodeMapper
{
AWS_SYNTHETICS_API CanaryStateReasonCode GetCanaryStateReasonCodeForName(const Aws::String& name);
AWS_SYNTHETICS_API Aws::String GetNameForCanaryStateReasonCode(CanaryStateReasonCode value);
} // namespace CanaryStateReasonCodeMapper
} // namespace Model
} // namespace Synthetics
} // namespace Aws

View File

@@ -0,0 +1,167 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
#include <aws/synthetics/model/CanaryState.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/synthetics/model/CanaryStateReasonCode.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace Synthetics
{
namespace Model
{
/**
* <p>A structure that contains the current state of the canary.</p><p><h3>See
* Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/CanaryStatus">AWS
* API Reference</a></p>
*/
class AWS_SYNTHETICS_API CanaryStatus
{
public:
CanaryStatus();
CanaryStatus(Aws::Utils::Json::JsonView jsonValue);
CanaryStatus& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>The current state of the canary.</p>
*/
inline const CanaryState& GetState() const{ return m_state; }
/**
* <p>The current state of the canary.</p>
*/
inline bool StateHasBeenSet() const { return m_stateHasBeenSet; }
/**
* <p>The current state of the canary.</p>
*/
inline void SetState(const CanaryState& value) { m_stateHasBeenSet = true; m_state = value; }
/**
* <p>The current state of the canary.</p>
*/
inline void SetState(CanaryState&& value) { m_stateHasBeenSet = true; m_state = std::move(value); }
/**
* <p>The current state of the canary.</p>
*/
inline CanaryStatus& WithState(const CanaryState& value) { SetState(value); return *this;}
/**
* <p>The current state of the canary.</p>
*/
inline CanaryStatus& WithState(CanaryState&& value) { SetState(std::move(value)); return *this;}
/**
* <p>If the canary has insufficient permissions to run, this field provides more
* details.</p>
*/
inline const Aws::String& GetStateReason() const{ return m_stateReason; }
/**
* <p>If the canary has insufficient permissions to run, this field provides more
* details.</p>
*/
inline bool StateReasonHasBeenSet() const { return m_stateReasonHasBeenSet; }
/**
* <p>If the canary has insufficient permissions to run, this field provides more
* details.</p>
*/
inline void SetStateReason(const Aws::String& value) { m_stateReasonHasBeenSet = true; m_stateReason = value; }
/**
* <p>If the canary has insufficient permissions to run, this field provides more
* details.</p>
*/
inline void SetStateReason(Aws::String&& value) { m_stateReasonHasBeenSet = true; m_stateReason = std::move(value); }
/**
* <p>If the canary has insufficient permissions to run, this field provides more
* details.</p>
*/
inline void SetStateReason(const char* value) { m_stateReasonHasBeenSet = true; m_stateReason.assign(value); }
/**
* <p>If the canary has insufficient permissions to run, this field provides more
* details.</p>
*/
inline CanaryStatus& WithStateReason(const Aws::String& value) { SetStateReason(value); return *this;}
/**
* <p>If the canary has insufficient permissions to run, this field provides more
* details.</p>
*/
inline CanaryStatus& WithStateReason(Aws::String&& value) { SetStateReason(std::move(value)); return *this;}
/**
* <p>If the canary has insufficient permissions to run, this field provides more
* details.</p>
*/
inline CanaryStatus& WithStateReason(const char* value) { SetStateReason(value); return *this;}
/**
* <p>If the canary cannot run or has failed, this field displays the reason.</p>
*/
inline const CanaryStateReasonCode& GetStateReasonCode() const{ return m_stateReasonCode; }
/**
* <p>If the canary cannot run or has failed, this field displays the reason.</p>
*/
inline bool StateReasonCodeHasBeenSet() const { return m_stateReasonCodeHasBeenSet; }
/**
* <p>If the canary cannot run or has failed, this field displays the reason.</p>
*/
inline void SetStateReasonCode(const CanaryStateReasonCode& value) { m_stateReasonCodeHasBeenSet = true; m_stateReasonCode = value; }
/**
* <p>If the canary cannot run or has failed, this field displays the reason.</p>
*/
inline void SetStateReasonCode(CanaryStateReasonCode&& value) { m_stateReasonCodeHasBeenSet = true; m_stateReasonCode = std::move(value); }
/**
* <p>If the canary cannot run or has failed, this field displays the reason.</p>
*/
inline CanaryStatus& WithStateReasonCode(const CanaryStateReasonCode& value) { SetStateReasonCode(value); return *this;}
/**
* <p>If the canary cannot run or has failed, this field displays the reason.</p>
*/
inline CanaryStatus& WithStateReasonCode(CanaryStateReasonCode&& value) { SetStateReasonCode(std::move(value)); return *this;}
private:
CanaryState m_state;
bool m_stateHasBeenSet;
Aws::String m_stateReason;
bool m_stateReasonHasBeenSet;
CanaryStateReasonCode m_stateReasonCode;
bool m_stateReasonCodeHasBeenSet;
};
} // namespace Model
} // namespace Synthetics
} // namespace Aws

View File

@@ -0,0 +1,181 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
#include <aws/core/utils/DateTime.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace Synthetics
{
namespace Model
{
/**
* <p>This structure contains information about when the canary was created and
* modified.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/CanaryTimeline">AWS
* API Reference</a></p>
*/
class AWS_SYNTHETICS_API CanaryTimeline
{
public:
CanaryTimeline();
CanaryTimeline(Aws::Utils::Json::JsonView jsonValue);
CanaryTimeline& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>The date and time the canary was created.</p>
*/
inline const Aws::Utils::DateTime& GetCreated() const{ return m_created; }
/**
* <p>The date and time the canary was created.</p>
*/
inline bool CreatedHasBeenSet() const { return m_createdHasBeenSet; }
/**
* <p>The date and time the canary was created.</p>
*/
inline void SetCreated(const Aws::Utils::DateTime& value) { m_createdHasBeenSet = true; m_created = value; }
/**
* <p>The date and time the canary was created.</p>
*/
inline void SetCreated(Aws::Utils::DateTime&& value) { m_createdHasBeenSet = true; m_created = std::move(value); }
/**
* <p>The date and time the canary was created.</p>
*/
inline CanaryTimeline& WithCreated(const Aws::Utils::DateTime& value) { SetCreated(value); return *this;}
/**
* <p>The date and time the canary was created.</p>
*/
inline CanaryTimeline& WithCreated(Aws::Utils::DateTime&& value) { SetCreated(std::move(value)); return *this;}
/**
* <p>The date and time the canary was most recently modified.</p>
*/
inline const Aws::Utils::DateTime& GetLastModified() const{ return m_lastModified; }
/**
* <p>The date and time the canary was most recently modified.</p>
*/
inline bool LastModifiedHasBeenSet() const { return m_lastModifiedHasBeenSet; }
/**
* <p>The date and time the canary was most recently modified.</p>
*/
inline void SetLastModified(const Aws::Utils::DateTime& value) { m_lastModifiedHasBeenSet = true; m_lastModified = value; }
/**
* <p>The date and time the canary was most recently modified.</p>
*/
inline void SetLastModified(Aws::Utils::DateTime&& value) { m_lastModifiedHasBeenSet = true; m_lastModified = std::move(value); }
/**
* <p>The date and time the canary was most recently modified.</p>
*/
inline CanaryTimeline& WithLastModified(const Aws::Utils::DateTime& value) { SetLastModified(value); return *this;}
/**
* <p>The date and time the canary was most recently modified.</p>
*/
inline CanaryTimeline& WithLastModified(Aws::Utils::DateTime&& value) { SetLastModified(std::move(value)); return *this;}
/**
* <p>The date and time that the canary's most recent run started.</p>
*/
inline const Aws::Utils::DateTime& GetLastStarted() const{ return m_lastStarted; }
/**
* <p>The date and time that the canary's most recent run started.</p>
*/
inline bool LastStartedHasBeenSet() const { return m_lastStartedHasBeenSet; }
/**
* <p>The date and time that the canary's most recent run started.</p>
*/
inline void SetLastStarted(const Aws::Utils::DateTime& value) { m_lastStartedHasBeenSet = true; m_lastStarted = value; }
/**
* <p>The date and time that the canary's most recent run started.</p>
*/
inline void SetLastStarted(Aws::Utils::DateTime&& value) { m_lastStartedHasBeenSet = true; m_lastStarted = std::move(value); }
/**
* <p>The date and time that the canary's most recent run started.</p>
*/
inline CanaryTimeline& WithLastStarted(const Aws::Utils::DateTime& value) { SetLastStarted(value); return *this;}
/**
* <p>The date and time that the canary's most recent run started.</p>
*/
inline CanaryTimeline& WithLastStarted(Aws::Utils::DateTime&& value) { SetLastStarted(std::move(value)); return *this;}
/**
* <p>The date and time that the canary's most recent run ended.</p>
*/
inline const Aws::Utils::DateTime& GetLastStopped() const{ return m_lastStopped; }
/**
* <p>The date and time that the canary's most recent run ended.</p>
*/
inline bool LastStoppedHasBeenSet() const { return m_lastStoppedHasBeenSet; }
/**
* <p>The date and time that the canary's most recent run ended.</p>
*/
inline void SetLastStopped(const Aws::Utils::DateTime& value) { m_lastStoppedHasBeenSet = true; m_lastStopped = value; }
/**
* <p>The date and time that the canary's most recent run ended.</p>
*/
inline void SetLastStopped(Aws::Utils::DateTime&& value) { m_lastStoppedHasBeenSet = true; m_lastStopped = std::move(value); }
/**
* <p>The date and time that the canary's most recent run ended.</p>
*/
inline CanaryTimeline& WithLastStopped(const Aws::Utils::DateTime& value) { SetLastStopped(value); return *this;}
/**
* <p>The date and time that the canary's most recent run ended.</p>
*/
inline CanaryTimeline& WithLastStopped(Aws::Utils::DateTime&& value) { SetLastStopped(std::move(value)); return *this;}
private:
Aws::Utils::DateTime m_created;
bool m_createdHasBeenSet;
Aws::Utils::DateTime m_lastModified;
bool m_lastModifiedHasBeenSet;
Aws::Utils::DateTime m_lastStarted;
bool m_lastStartedHasBeenSet;
Aws::Utils::DateTime m_lastStopped;
bool m_lastStoppedHasBeenSet;
};
} // namespace Model
} // namespace Synthetics
} // namespace Aws

View File

@@ -0,0 +1,757 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
#include <aws/synthetics/SyntheticsRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/synthetics/model/CanaryCodeInput.h>
#include <aws/synthetics/model/CanaryScheduleInput.h>
#include <aws/synthetics/model/CanaryRunConfigInput.h>
#include <aws/synthetics/model/VpcConfigInput.h>
#include <aws/core/utils/memory/stl/AWSMap.h>
#include <utility>
namespace Aws
{
namespace Synthetics
{
namespace Model
{
/**
*/
class AWS_SYNTHETICS_API CreateCanaryRequest : public SyntheticsRequest
{
public:
CreateCanaryRequest();
// 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 "CreateCanary"; }
Aws::String SerializePayload() const override;
/**
* <p>The name for this canary. Be sure to give it a descriptive name that
* distinguishes it from other canaries in your account.</p> <p>Do not include
* secrets or proprietary information in your canary names. The canary name makes
* up part of the canary ARN, and the ARN is included in outbound calls over the
* internet. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/servicelens_canaries_security.html">Security
* Considerations for Synthetics Canaries</a>.</p>
*/
inline const Aws::String& GetName() const{ return m_name; }
/**
* <p>The name for this canary. Be sure to give it a descriptive name that
* distinguishes it from other canaries in your account.</p> <p>Do not include
* secrets or proprietary information in your canary names. The canary name makes
* up part of the canary ARN, and the ARN is included in outbound calls over the
* internet. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/servicelens_canaries_security.html">Security
* Considerations for Synthetics Canaries</a>.</p>
*/
inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
/**
* <p>The name for this canary. Be sure to give it a descriptive name that
* distinguishes it from other canaries in your account.</p> <p>Do not include
* secrets or proprietary information in your canary names. The canary name makes
* up part of the canary ARN, and the ARN is included in outbound calls over the
* internet. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/servicelens_canaries_security.html">Security
* Considerations for Synthetics Canaries</a>.</p>
*/
inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; }
/**
* <p>The name for this canary. Be sure to give it a descriptive name that
* distinguishes it from other canaries in your account.</p> <p>Do not include
* secrets or proprietary information in your canary names. The canary name makes
* up part of the canary ARN, and the ARN is included in outbound calls over the
* internet. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/servicelens_canaries_security.html">Security
* Considerations for Synthetics Canaries</a>.</p>
*/
inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); }
/**
* <p>The name for this canary. Be sure to give it a descriptive name that
* distinguishes it from other canaries in your account.</p> <p>Do not include
* secrets or proprietary information in your canary names. The canary name makes
* up part of the canary ARN, and the ARN is included in outbound calls over the
* internet. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/servicelens_canaries_security.html">Security
* Considerations for Synthetics Canaries</a>.</p>
*/
inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); }
/**
* <p>The name for this canary. Be sure to give it a descriptive name that
* distinguishes it from other canaries in your account.</p> <p>Do not include
* secrets or proprietary information in your canary names. The canary name makes
* up part of the canary ARN, and the ARN is included in outbound calls over the
* internet. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/servicelens_canaries_security.html">Security
* Considerations for Synthetics Canaries</a>.</p>
*/
inline CreateCanaryRequest& WithName(const Aws::String& value) { SetName(value); return *this;}
/**
* <p>The name for this canary. Be sure to give it a descriptive name that
* distinguishes it from other canaries in your account.</p> <p>Do not include
* secrets or proprietary information in your canary names. The canary name makes
* up part of the canary ARN, and the ARN is included in outbound calls over the
* internet. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/servicelens_canaries_security.html">Security
* Considerations for Synthetics Canaries</a>.</p>
*/
inline CreateCanaryRequest& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;}
/**
* <p>The name for this canary. Be sure to give it a descriptive name that
* distinguishes it from other canaries in your account.</p> <p>Do not include
* secrets or proprietary information in your canary names. The canary name makes
* up part of the canary ARN, and the ARN is included in outbound calls over the
* internet. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/servicelens_canaries_security.html">Security
* Considerations for Synthetics Canaries</a>.</p>
*/
inline CreateCanaryRequest& WithName(const char* value) { SetName(value); return *this;}
/**
* <p>A structure that includes the entry point from which the canary should start
* running your script. If the script is stored in an S3 bucket, the bucket name,
* key, and version are also included. </p>
*/
inline const CanaryCodeInput& GetCode() const{ return m_code; }
/**
* <p>A structure that includes the entry point from which the canary should start
* running your script. If the script is stored in an S3 bucket, the bucket name,
* key, and version are also included. </p>
*/
inline bool CodeHasBeenSet() const { return m_codeHasBeenSet; }
/**
* <p>A structure that includes the entry point from which the canary should start
* running your script. If the script is stored in an S3 bucket, the bucket name,
* key, and version are also included. </p>
*/
inline void SetCode(const CanaryCodeInput& value) { m_codeHasBeenSet = true; m_code = value; }
/**
* <p>A structure that includes the entry point from which the canary should start
* running your script. If the script is stored in an S3 bucket, the bucket name,
* key, and version are also included. </p>
*/
inline void SetCode(CanaryCodeInput&& value) { m_codeHasBeenSet = true; m_code = std::move(value); }
/**
* <p>A structure that includes the entry point from which the canary should start
* running your script. If the script is stored in an S3 bucket, the bucket name,
* key, and version are also included. </p>
*/
inline CreateCanaryRequest& WithCode(const CanaryCodeInput& value) { SetCode(value); return *this;}
/**
* <p>A structure that includes the entry point from which the canary should start
* running your script. If the script is stored in an S3 bucket, the bucket name,
* key, and version are also included. </p>
*/
inline CreateCanaryRequest& WithCode(CanaryCodeInput&& value) { SetCode(std::move(value)); return *this;}
/**
* <p>The location in Amazon S3 where Synthetics stores artifacts from the test
* runs of this canary. Artifacts include the log file, screenshots, and HAR
* files.</p>
*/
inline const Aws::String& GetArtifactS3Location() const{ return m_artifactS3Location; }
/**
* <p>The location in Amazon S3 where Synthetics stores artifacts from the test
* runs of this canary. Artifacts include the log file, screenshots, and HAR
* files.</p>
*/
inline bool ArtifactS3LocationHasBeenSet() const { return m_artifactS3LocationHasBeenSet; }
/**
* <p>The location in Amazon S3 where Synthetics stores artifacts from the test
* runs of this canary. Artifacts include the log file, screenshots, and HAR
* files.</p>
*/
inline void SetArtifactS3Location(const Aws::String& value) { m_artifactS3LocationHasBeenSet = true; m_artifactS3Location = value; }
/**
* <p>The location in Amazon S3 where Synthetics stores artifacts from the test
* runs of this canary. Artifacts include the log file, screenshots, and HAR
* files.</p>
*/
inline void SetArtifactS3Location(Aws::String&& value) { m_artifactS3LocationHasBeenSet = true; m_artifactS3Location = std::move(value); }
/**
* <p>The location in Amazon S3 where Synthetics stores artifacts from the test
* runs of this canary. Artifacts include the log file, screenshots, and HAR
* files.</p>
*/
inline void SetArtifactS3Location(const char* value) { m_artifactS3LocationHasBeenSet = true; m_artifactS3Location.assign(value); }
/**
* <p>The location in Amazon S3 where Synthetics stores artifacts from the test
* runs of this canary. Artifacts include the log file, screenshots, and HAR
* files.</p>
*/
inline CreateCanaryRequest& WithArtifactS3Location(const Aws::String& value) { SetArtifactS3Location(value); return *this;}
/**
* <p>The location in Amazon S3 where Synthetics stores artifacts from the test
* runs of this canary. Artifacts include the log file, screenshots, and HAR
* files.</p>
*/
inline CreateCanaryRequest& WithArtifactS3Location(Aws::String&& value) { SetArtifactS3Location(std::move(value)); return *this;}
/**
* <p>The location in Amazon S3 where Synthetics stores artifacts from the test
* runs of this canary. Artifacts include the log file, screenshots, and HAR
* files.</p>
*/
inline CreateCanaryRequest& WithArtifactS3Location(const char* value) { SetArtifactS3Location(value); return *this;}
/**
* <p>The ARN of the IAM role to be used to run the canary. This role must already
* exist, and must include <code>lambda.amazonaws.com</code> as a principal in the
* trust policy. The role must also have the following permissions:</p> <ul> <li>
* <p> <code>s3:PutObject</code> </p> </li> <li> <p>
* <code>s3:GetBucketLocation</code> </p> </li> <li> <p>
* <code>s3:ListAllMyBuckets</code> </p> </li> <li> <p>
* <code>cloudwatch:PutMetricData</code> </p> </li> <li> <p>
* <code>logs:CreateLogGroup</code> </p> </li> <li> <p>
* <code>logs:CreateLogStream</code> </p> </li> <li> <p>
* <code>logs:CreateLogStream</code> </p> </li> </ul>
*/
inline const Aws::String& GetExecutionRoleArn() const{ return m_executionRoleArn; }
/**
* <p>The ARN of the IAM role to be used to run the canary. This role must already
* exist, and must include <code>lambda.amazonaws.com</code> as a principal in the
* trust policy. The role must also have the following permissions:</p> <ul> <li>
* <p> <code>s3:PutObject</code> </p> </li> <li> <p>
* <code>s3:GetBucketLocation</code> </p> </li> <li> <p>
* <code>s3:ListAllMyBuckets</code> </p> </li> <li> <p>
* <code>cloudwatch:PutMetricData</code> </p> </li> <li> <p>
* <code>logs:CreateLogGroup</code> </p> </li> <li> <p>
* <code>logs:CreateLogStream</code> </p> </li> <li> <p>
* <code>logs:CreateLogStream</code> </p> </li> </ul>
*/
inline bool ExecutionRoleArnHasBeenSet() const { return m_executionRoleArnHasBeenSet; }
/**
* <p>The ARN of the IAM role to be used to run the canary. This role must already
* exist, and must include <code>lambda.amazonaws.com</code> as a principal in the
* trust policy. The role must also have the following permissions:</p> <ul> <li>
* <p> <code>s3:PutObject</code> </p> </li> <li> <p>
* <code>s3:GetBucketLocation</code> </p> </li> <li> <p>
* <code>s3:ListAllMyBuckets</code> </p> </li> <li> <p>
* <code>cloudwatch:PutMetricData</code> </p> </li> <li> <p>
* <code>logs:CreateLogGroup</code> </p> </li> <li> <p>
* <code>logs:CreateLogStream</code> </p> </li> <li> <p>
* <code>logs:CreateLogStream</code> </p> </li> </ul>
*/
inline void SetExecutionRoleArn(const Aws::String& value) { m_executionRoleArnHasBeenSet = true; m_executionRoleArn = value; }
/**
* <p>The ARN of the IAM role to be used to run the canary. This role must already
* exist, and must include <code>lambda.amazonaws.com</code> as a principal in the
* trust policy. The role must also have the following permissions:</p> <ul> <li>
* <p> <code>s3:PutObject</code> </p> </li> <li> <p>
* <code>s3:GetBucketLocation</code> </p> </li> <li> <p>
* <code>s3:ListAllMyBuckets</code> </p> </li> <li> <p>
* <code>cloudwatch:PutMetricData</code> </p> </li> <li> <p>
* <code>logs:CreateLogGroup</code> </p> </li> <li> <p>
* <code>logs:CreateLogStream</code> </p> </li> <li> <p>
* <code>logs:CreateLogStream</code> </p> </li> </ul>
*/
inline void SetExecutionRoleArn(Aws::String&& value) { m_executionRoleArnHasBeenSet = true; m_executionRoleArn = std::move(value); }
/**
* <p>The ARN of the IAM role to be used to run the canary. This role must already
* exist, and must include <code>lambda.amazonaws.com</code> as a principal in the
* trust policy. The role must also have the following permissions:</p> <ul> <li>
* <p> <code>s3:PutObject</code> </p> </li> <li> <p>
* <code>s3:GetBucketLocation</code> </p> </li> <li> <p>
* <code>s3:ListAllMyBuckets</code> </p> </li> <li> <p>
* <code>cloudwatch:PutMetricData</code> </p> </li> <li> <p>
* <code>logs:CreateLogGroup</code> </p> </li> <li> <p>
* <code>logs:CreateLogStream</code> </p> </li> <li> <p>
* <code>logs:CreateLogStream</code> </p> </li> </ul>
*/
inline void SetExecutionRoleArn(const char* value) { m_executionRoleArnHasBeenSet = true; m_executionRoleArn.assign(value); }
/**
* <p>The ARN of the IAM role to be used to run the canary. This role must already
* exist, and must include <code>lambda.amazonaws.com</code> as a principal in the
* trust policy. The role must also have the following permissions:</p> <ul> <li>
* <p> <code>s3:PutObject</code> </p> </li> <li> <p>
* <code>s3:GetBucketLocation</code> </p> </li> <li> <p>
* <code>s3:ListAllMyBuckets</code> </p> </li> <li> <p>
* <code>cloudwatch:PutMetricData</code> </p> </li> <li> <p>
* <code>logs:CreateLogGroup</code> </p> </li> <li> <p>
* <code>logs:CreateLogStream</code> </p> </li> <li> <p>
* <code>logs:CreateLogStream</code> </p> </li> </ul>
*/
inline CreateCanaryRequest& WithExecutionRoleArn(const Aws::String& value) { SetExecutionRoleArn(value); return *this;}
/**
* <p>The ARN of the IAM role to be used to run the canary. This role must already
* exist, and must include <code>lambda.amazonaws.com</code> as a principal in the
* trust policy. The role must also have the following permissions:</p> <ul> <li>
* <p> <code>s3:PutObject</code> </p> </li> <li> <p>
* <code>s3:GetBucketLocation</code> </p> </li> <li> <p>
* <code>s3:ListAllMyBuckets</code> </p> </li> <li> <p>
* <code>cloudwatch:PutMetricData</code> </p> </li> <li> <p>
* <code>logs:CreateLogGroup</code> </p> </li> <li> <p>
* <code>logs:CreateLogStream</code> </p> </li> <li> <p>
* <code>logs:CreateLogStream</code> </p> </li> </ul>
*/
inline CreateCanaryRequest& WithExecutionRoleArn(Aws::String&& value) { SetExecutionRoleArn(std::move(value)); return *this;}
/**
* <p>The ARN of the IAM role to be used to run the canary. This role must already
* exist, and must include <code>lambda.amazonaws.com</code> as a principal in the
* trust policy. The role must also have the following permissions:</p> <ul> <li>
* <p> <code>s3:PutObject</code> </p> </li> <li> <p>
* <code>s3:GetBucketLocation</code> </p> </li> <li> <p>
* <code>s3:ListAllMyBuckets</code> </p> </li> <li> <p>
* <code>cloudwatch:PutMetricData</code> </p> </li> <li> <p>
* <code>logs:CreateLogGroup</code> </p> </li> <li> <p>
* <code>logs:CreateLogStream</code> </p> </li> <li> <p>
* <code>logs:CreateLogStream</code> </p> </li> </ul>
*/
inline CreateCanaryRequest& WithExecutionRoleArn(const char* value) { SetExecutionRoleArn(value); return *this;}
/**
* <p>A structure that contains information about how often the canary is to run
* and when these test runs are to stop.</p>
*/
inline const CanaryScheduleInput& GetSchedule() const{ return m_schedule; }
/**
* <p>A structure that contains information about how often the canary is to run
* and when these test runs are to stop.</p>
*/
inline bool ScheduleHasBeenSet() const { return m_scheduleHasBeenSet; }
/**
* <p>A structure that contains information about how often the canary is to run
* and when these test runs are to stop.</p>
*/
inline void SetSchedule(const CanaryScheduleInput& value) { m_scheduleHasBeenSet = true; m_schedule = value; }
/**
* <p>A structure that contains information about how often the canary is to run
* and when these test runs are to stop.</p>
*/
inline void SetSchedule(CanaryScheduleInput&& value) { m_scheduleHasBeenSet = true; m_schedule = std::move(value); }
/**
* <p>A structure that contains information about how often the canary is to run
* and when these test runs are to stop.</p>
*/
inline CreateCanaryRequest& WithSchedule(const CanaryScheduleInput& value) { SetSchedule(value); return *this;}
/**
* <p>A structure that contains information about how often the canary is to run
* and when these test runs are to stop.</p>
*/
inline CreateCanaryRequest& WithSchedule(CanaryScheduleInput&& value) { SetSchedule(std::move(value)); return *this;}
/**
* <p>A structure that contains the configuration for individual canary runs, such
* as timeout value.</p>
*/
inline const CanaryRunConfigInput& GetRunConfig() const{ return m_runConfig; }
/**
* <p>A structure that contains the configuration for individual canary runs, such
* as timeout value.</p>
*/
inline bool RunConfigHasBeenSet() const { return m_runConfigHasBeenSet; }
/**
* <p>A structure that contains the configuration for individual canary runs, such
* as timeout value.</p>
*/
inline void SetRunConfig(const CanaryRunConfigInput& value) { m_runConfigHasBeenSet = true; m_runConfig = value; }
/**
* <p>A structure that contains the configuration for individual canary runs, such
* as timeout value.</p>
*/
inline void SetRunConfig(CanaryRunConfigInput&& value) { m_runConfigHasBeenSet = true; m_runConfig = std::move(value); }
/**
* <p>A structure that contains the configuration for individual canary runs, such
* as timeout value.</p>
*/
inline CreateCanaryRequest& WithRunConfig(const CanaryRunConfigInput& value) { SetRunConfig(value); return *this;}
/**
* <p>A structure that contains the configuration for individual canary runs, such
* as timeout value.</p>
*/
inline CreateCanaryRequest& WithRunConfig(CanaryRunConfigInput&& value) { SetRunConfig(std::move(value)); return *this;}
/**
* <p>The number of days to retain data about successful runs of this canary. If
* you omit this field, the default of 31 days is used. The valid range is 1 to 455
* days.</p>
*/
inline int GetSuccessRetentionPeriodInDays() const{ return m_successRetentionPeriodInDays; }
/**
* <p>The number of days to retain data about successful runs of this canary. If
* you omit this field, the default of 31 days is used. The valid range is 1 to 455
* days.</p>
*/
inline bool SuccessRetentionPeriodInDaysHasBeenSet() const { return m_successRetentionPeriodInDaysHasBeenSet; }
/**
* <p>The number of days to retain data about successful runs of this canary. If
* you omit this field, the default of 31 days is used. The valid range is 1 to 455
* days.</p>
*/
inline void SetSuccessRetentionPeriodInDays(int value) { m_successRetentionPeriodInDaysHasBeenSet = true; m_successRetentionPeriodInDays = value; }
/**
* <p>The number of days to retain data about successful runs of this canary. If
* you omit this field, the default of 31 days is used. The valid range is 1 to 455
* days.</p>
*/
inline CreateCanaryRequest& WithSuccessRetentionPeriodInDays(int value) { SetSuccessRetentionPeriodInDays(value); return *this;}
/**
* <p>The number of days to retain data about failed runs of this canary. If you
* omit this field, the default of 31 days is used. The valid range is 1 to 455
* days.</p>
*/
inline int GetFailureRetentionPeriodInDays() const{ return m_failureRetentionPeriodInDays; }
/**
* <p>The number of days to retain data about failed runs of this canary. If you
* omit this field, the default of 31 days is used. The valid range is 1 to 455
* days.</p>
*/
inline bool FailureRetentionPeriodInDaysHasBeenSet() const { return m_failureRetentionPeriodInDaysHasBeenSet; }
/**
* <p>The number of days to retain data about failed runs of this canary. If you
* omit this field, the default of 31 days is used. The valid range is 1 to 455
* days.</p>
*/
inline void SetFailureRetentionPeriodInDays(int value) { m_failureRetentionPeriodInDaysHasBeenSet = true; m_failureRetentionPeriodInDays = value; }
/**
* <p>The number of days to retain data about failed runs of this canary. If you
* omit this field, the default of 31 days is used. The valid range is 1 to 455
* days.</p>
*/
inline CreateCanaryRequest& WithFailureRetentionPeriodInDays(int value) { SetFailureRetentionPeriodInDays(value); return *this;}
/**
* <p>Specifies the runtime version to use for the canary. Currently, the only
* valid value is <code>syn-1.0</code>. For more information about runtime
* versions, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_Library.html">
* Canary Runtime Versions</a>.</p>
*/
inline const Aws::String& GetRuntimeVersion() const{ return m_runtimeVersion; }
/**
* <p>Specifies the runtime version to use for the canary. Currently, the only
* valid value is <code>syn-1.0</code>. For more information about runtime
* versions, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_Library.html">
* Canary Runtime Versions</a>.</p>
*/
inline bool RuntimeVersionHasBeenSet() const { return m_runtimeVersionHasBeenSet; }
/**
* <p>Specifies the runtime version to use for the canary. Currently, the only
* valid value is <code>syn-1.0</code>. For more information about runtime
* versions, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_Library.html">
* Canary Runtime Versions</a>.</p>
*/
inline void SetRuntimeVersion(const Aws::String& value) { m_runtimeVersionHasBeenSet = true; m_runtimeVersion = value; }
/**
* <p>Specifies the runtime version to use for the canary. Currently, the only
* valid value is <code>syn-1.0</code>. For more information about runtime
* versions, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_Library.html">
* Canary Runtime Versions</a>.</p>
*/
inline void SetRuntimeVersion(Aws::String&& value) { m_runtimeVersionHasBeenSet = true; m_runtimeVersion = std::move(value); }
/**
* <p>Specifies the runtime version to use for the canary. Currently, the only
* valid value is <code>syn-1.0</code>. For more information about runtime
* versions, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_Library.html">
* Canary Runtime Versions</a>.</p>
*/
inline void SetRuntimeVersion(const char* value) { m_runtimeVersionHasBeenSet = true; m_runtimeVersion.assign(value); }
/**
* <p>Specifies the runtime version to use for the canary. Currently, the only
* valid value is <code>syn-1.0</code>. For more information about runtime
* versions, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_Library.html">
* Canary Runtime Versions</a>.</p>
*/
inline CreateCanaryRequest& WithRuntimeVersion(const Aws::String& value) { SetRuntimeVersion(value); return *this;}
/**
* <p>Specifies the runtime version to use for the canary. Currently, the only
* valid value is <code>syn-1.0</code>. For more information about runtime
* versions, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_Library.html">
* Canary Runtime Versions</a>.</p>
*/
inline CreateCanaryRequest& WithRuntimeVersion(Aws::String&& value) { SetRuntimeVersion(std::move(value)); return *this;}
/**
* <p>Specifies the runtime version to use for the canary. Currently, the only
* valid value is <code>syn-1.0</code>. For more information about runtime
* versions, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_Library.html">
* Canary Runtime Versions</a>.</p>
*/
inline CreateCanaryRequest& WithRuntimeVersion(const char* value) { SetRuntimeVersion(value); return *this;}
/**
* <p>If this canary is to test an endpoint in a VPC, this structure contains
* information about the subnet and security groups of the VPC endpoint. For more
* information, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_VPC.html">
* Running a Canary in a VPC</a>.</p>
*/
inline const VpcConfigInput& GetVpcConfig() const{ return m_vpcConfig; }
/**
* <p>If this canary is to test an endpoint in a VPC, this structure contains
* information about the subnet and security groups of the VPC endpoint. For more
* information, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_VPC.html">
* Running a Canary in a VPC</a>.</p>
*/
inline bool VpcConfigHasBeenSet() const { return m_vpcConfigHasBeenSet; }
/**
* <p>If this canary is to test an endpoint in a VPC, this structure contains
* information about the subnet and security groups of the VPC endpoint. For more
* information, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_VPC.html">
* Running a Canary in a VPC</a>.</p>
*/
inline void SetVpcConfig(const VpcConfigInput& value) { m_vpcConfigHasBeenSet = true; m_vpcConfig = value; }
/**
* <p>If this canary is to test an endpoint in a VPC, this structure contains
* information about the subnet and security groups of the VPC endpoint. For more
* information, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_VPC.html">
* Running a Canary in a VPC</a>.</p>
*/
inline void SetVpcConfig(VpcConfigInput&& value) { m_vpcConfigHasBeenSet = true; m_vpcConfig = std::move(value); }
/**
* <p>If this canary is to test an endpoint in a VPC, this structure contains
* information about the subnet and security groups of the VPC endpoint. For more
* information, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_VPC.html">
* Running a Canary in a VPC</a>.</p>
*/
inline CreateCanaryRequest& WithVpcConfig(const VpcConfigInput& value) { SetVpcConfig(value); return *this;}
/**
* <p>If this canary is to test an endpoint in a VPC, this structure contains
* information about the subnet and security groups of the VPC endpoint. For more
* information, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_VPC.html">
* Running a Canary in a VPC</a>.</p>
*/
inline CreateCanaryRequest& WithVpcConfig(VpcConfigInput&& value) { SetVpcConfig(std::move(value)); return *this;}
/**
* <p>A list of key-value pairs to associate with the canary. You can associate as
* many as 50 tags with a canary.</p> <p>Tags can help you organize and categorize
* your resources. You can also use them to scope user permissions, by granting a
* user permission to access or change only the resources that have certain tag
* values.</p>
*/
inline const Aws::Map<Aws::String, Aws::String>& GetTags() const{ return m_tags; }
/**
* <p>A list of key-value pairs to associate with the canary. You can associate as
* many as 50 tags with a canary.</p> <p>Tags can help you organize and categorize
* your resources. You can also use them to scope user permissions, by granting a
* user permission to access or change only the resources that have certain tag
* values.</p>
*/
inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
/**
* <p>A list of key-value pairs to associate with the canary. You can associate as
* many as 50 tags with a canary.</p> <p>Tags can help you organize and categorize
* your resources. You can also use them to scope user permissions, by granting a
* user permission to access or change only the resources that have certain tag
* values.</p>
*/
inline void SetTags(const Aws::Map<Aws::String, Aws::String>& value) { m_tagsHasBeenSet = true; m_tags = value; }
/**
* <p>A list of key-value pairs to associate with the canary. You can associate as
* many as 50 tags with a canary.</p> <p>Tags can help you organize and categorize
* your resources. You can also use them to scope user permissions, by granting a
* user permission to access or change only the resources that have certain tag
* values.</p>
*/
inline void SetTags(Aws::Map<Aws::String, Aws::String>&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); }
/**
* <p>A list of key-value pairs to associate with the canary. You can associate as
* many as 50 tags with a canary.</p> <p>Tags can help you organize and categorize
* your resources. You can also use them to scope user permissions, by granting a
* user permission to access or change only the resources that have certain tag
* values.</p>
*/
inline CreateCanaryRequest& WithTags(const Aws::Map<Aws::String, Aws::String>& value) { SetTags(value); return *this;}
/**
* <p>A list of key-value pairs to associate with the canary. You can associate as
* many as 50 tags with a canary.</p> <p>Tags can help you organize and categorize
* your resources. You can also use them to scope user permissions, by granting a
* user permission to access or change only the resources that have certain tag
* values.</p>
*/
inline CreateCanaryRequest& WithTags(Aws::Map<Aws::String, Aws::String>&& value) { SetTags(std::move(value)); return *this;}
/**
* <p>A list of key-value pairs to associate with the canary. You can associate as
* many as 50 tags with a canary.</p> <p>Tags can help you organize and categorize
* your resources. You can also use them to scope user permissions, by granting a
* user permission to access or change only the resources that have certain tag
* values.</p>
*/
inline CreateCanaryRequest& AddTags(const Aws::String& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; }
/**
* <p>A list of key-value pairs to associate with the canary. You can associate as
* many as 50 tags with a canary.</p> <p>Tags can help you organize and categorize
* your resources. You can also use them to scope user permissions, by granting a
* user permission to access or change only the resources that have certain tag
* values.</p>
*/
inline CreateCanaryRequest& AddTags(Aws::String&& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; }
/**
* <p>A list of key-value pairs to associate with the canary. You can associate as
* many as 50 tags with a canary.</p> <p>Tags can help you organize and categorize
* your resources. You can also use them to scope user permissions, by granting a
* user permission to access or change only the resources that have certain tag
* values.</p>
*/
inline CreateCanaryRequest& AddTags(const Aws::String& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; }
/**
* <p>A list of key-value pairs to associate with the canary. You can associate as
* many as 50 tags with a canary.</p> <p>Tags can help you organize and categorize
* your resources. You can also use them to scope user permissions, by granting a
* user permission to access or change only the resources that have certain tag
* values.</p>
*/
inline CreateCanaryRequest& AddTags(Aws::String&& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), std::move(value)); return *this; }
/**
* <p>A list of key-value pairs to associate with the canary. You can associate as
* many as 50 tags with a canary.</p> <p>Tags can help you organize and categorize
* your resources. You can also use them to scope user permissions, by granting a
* user permission to access or change only the resources that have certain tag
* values.</p>
*/
inline CreateCanaryRequest& AddTags(const char* key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; }
/**
* <p>A list of key-value pairs to associate with the canary. You can associate as
* many as 50 tags with a canary.</p> <p>Tags can help you organize and categorize
* your resources. You can also use them to scope user permissions, by granting a
* user permission to access or change only the resources that have certain tag
* values.</p>
*/
inline CreateCanaryRequest& AddTags(Aws::String&& key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; }
/**
* <p>A list of key-value pairs to associate with the canary. You can associate as
* many as 50 tags with a canary.</p> <p>Tags can help you organize and categorize
* your resources. You can also use them to scope user permissions, by granting a
* user permission to access or change only the resources that have certain tag
* values.</p>
*/
inline CreateCanaryRequest& AddTags(const char* key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; }
private:
Aws::String m_name;
bool m_nameHasBeenSet;
CanaryCodeInput m_code;
bool m_codeHasBeenSet;
Aws::String m_artifactS3Location;
bool m_artifactS3LocationHasBeenSet;
Aws::String m_executionRoleArn;
bool m_executionRoleArnHasBeenSet;
CanaryScheduleInput m_schedule;
bool m_scheduleHasBeenSet;
CanaryRunConfigInput m_runConfig;
bool m_runConfigHasBeenSet;
int m_successRetentionPeriodInDays;
bool m_successRetentionPeriodInDaysHasBeenSet;
int m_failureRetentionPeriodInDays;
bool m_failureRetentionPeriodInDaysHasBeenSet;
Aws::String m_runtimeVersion;
bool m_runtimeVersionHasBeenSet;
VpcConfigInput m_vpcConfig;
bool m_vpcConfigHasBeenSet;
Aws::Map<Aws::String, Aws::String> m_tags;
bool m_tagsHasBeenSet;
};
} // namespace Model
} // namespace Synthetics
} // namespace Aws

View File

@@ -0,0 +1,67 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
#include <aws/synthetics/model/Canary.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace Synthetics
{
namespace Model
{
class AWS_SYNTHETICS_API CreateCanaryResult
{
public:
CreateCanaryResult();
CreateCanaryResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
CreateCanaryResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>The full details about the canary you have created.</p>
*/
inline const Canary& GetCanary() const{ return m_canary; }
/**
* <p>The full details about the canary you have created.</p>
*/
inline void SetCanary(const Canary& value) { m_canary = value; }
/**
* <p>The full details about the canary you have created.</p>
*/
inline void SetCanary(Canary&& value) { m_canary = std::move(value); }
/**
* <p>The full details about the canary you have created.</p>
*/
inline CreateCanaryResult& WithCanary(const Canary& value) { SetCanary(value); return *this;}
/**
* <p>The full details about the canary you have created.</p>
*/
inline CreateCanaryResult& WithCanary(Canary&& value) { SetCanary(std::move(value)); return *this;}
private:
Canary m_canary;
};
} // namespace Model
} // namespace Synthetics
} // namespace Aws

View File

@@ -0,0 +1,99 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
#include <aws/synthetics/SyntheticsRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Synthetics
{
namespace Model
{
/**
*/
class AWS_SYNTHETICS_API DeleteCanaryRequest : public SyntheticsRequest
{
public:
DeleteCanaryRequest();
// 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 "DeleteCanary"; }
Aws::String SerializePayload() const override;
/**
* <p>The name of the canary that you want to delete. To find the names of your
* canaries, use <a
* href="https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_DescribeCanaries.html">DescribeCanaries</a>.</p>
*/
inline const Aws::String& GetName() const{ return m_name; }
/**
* <p>The name of the canary that you want to delete. To find the names of your
* canaries, use <a
* href="https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_DescribeCanaries.html">DescribeCanaries</a>.</p>
*/
inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
/**
* <p>The name of the canary that you want to delete. To find the names of your
* canaries, use <a
* href="https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_DescribeCanaries.html">DescribeCanaries</a>.</p>
*/
inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; }
/**
* <p>The name of the canary that you want to delete. To find the names of your
* canaries, use <a
* href="https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_DescribeCanaries.html">DescribeCanaries</a>.</p>
*/
inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); }
/**
* <p>The name of the canary that you want to delete. To find the names of your
* canaries, use <a
* href="https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_DescribeCanaries.html">DescribeCanaries</a>.</p>
*/
inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); }
/**
* <p>The name of the canary that you want to delete. To find the names of your
* canaries, use <a
* href="https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_DescribeCanaries.html">DescribeCanaries</a>.</p>
*/
inline DeleteCanaryRequest& WithName(const Aws::String& value) { SetName(value); return *this;}
/**
* <p>The name of the canary that you want to delete. To find the names of your
* canaries, use <a
* href="https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_DescribeCanaries.html">DescribeCanaries</a>.</p>
*/
inline DeleteCanaryRequest& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;}
/**
* <p>The name of the canary that you want to delete. To find the names of your
* canaries, use <a
* href="https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_DescribeCanaries.html">DescribeCanaries</a>.</p>
*/
inline DeleteCanaryRequest& WithName(const char* value) { SetName(value); return *this;}
private:
Aws::String m_name;
bool m_nameHasBeenSet;
};
} // namespace Model
} // namespace Synthetics
} // namespace Aws

View File

@@ -0,0 +1,36 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace Synthetics
{
namespace Model
{
class AWS_SYNTHETICS_API DeleteCanaryResult
{
public:
DeleteCanaryResult();
DeleteCanaryResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
DeleteCanaryResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
};
} // namespace Model
} // namespace Synthetics
} // namespace Aws

View File

@@ -0,0 +1,131 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
#include <aws/synthetics/SyntheticsRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Synthetics
{
namespace Model
{
/**
*/
class AWS_SYNTHETICS_API DescribeCanariesLastRunRequest : public SyntheticsRequest
{
public:
DescribeCanariesLastRunRequest();
// 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 "DescribeCanariesLastRun"; }
Aws::String SerializePayload() const override;
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>DescribeCanaries</code> operation to retrieve the
* next set of results.</p>
*/
inline const Aws::String& GetNextToken() const{ return m_nextToken; }
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>DescribeCanaries</code> operation to retrieve the
* next set of results.</p>
*/
inline bool NextTokenHasBeenSet() const { return m_nextTokenHasBeenSet; }
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>DescribeCanaries</code> operation to retrieve the
* next set of results.</p>
*/
inline void SetNextToken(const Aws::String& value) { m_nextTokenHasBeenSet = true; m_nextToken = value; }
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>DescribeCanaries</code> operation to retrieve the
* next set of results.</p>
*/
inline void SetNextToken(Aws::String&& value) { m_nextTokenHasBeenSet = true; m_nextToken = std::move(value); }
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>DescribeCanaries</code> operation to retrieve the
* next set of results.</p>
*/
inline void SetNextToken(const char* value) { m_nextTokenHasBeenSet = true; m_nextToken.assign(value); }
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>DescribeCanaries</code> operation to retrieve the
* next set of results.</p>
*/
inline DescribeCanariesLastRunRequest& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;}
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>DescribeCanaries</code> operation to retrieve the
* next set of results.</p>
*/
inline DescribeCanariesLastRunRequest& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;}
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>DescribeCanaries</code> operation to retrieve the
* next set of results.</p>
*/
inline DescribeCanariesLastRunRequest& WithNextToken(const char* value) { SetNextToken(value); return *this;}
/**
* <p>Specify this parameter to limit how many runs are returned each time you use
* the <code>DescribeLastRun</code> operation. If you omit this parameter, the
* default of 100 is used.</p>
*/
inline int GetMaxResults() const{ return m_maxResults; }
/**
* <p>Specify this parameter to limit how many runs are returned each time you use
* the <code>DescribeLastRun</code> operation. If you omit this parameter, the
* default of 100 is used.</p>
*/
inline bool MaxResultsHasBeenSet() const { return m_maxResultsHasBeenSet; }
/**
* <p>Specify this parameter to limit how many runs are returned each time you use
* the <code>DescribeLastRun</code> operation. If you omit this parameter, the
* default of 100 is used.</p>
*/
inline void SetMaxResults(int value) { m_maxResultsHasBeenSet = true; m_maxResults = value; }
/**
* <p>Specify this parameter to limit how many runs are returned each time you use
* the <code>DescribeLastRun</code> operation. If you omit this parameter, the
* default of 100 is used.</p>
*/
inline DescribeCanariesLastRunRequest& WithMaxResults(int value) { SetMaxResults(value); return *this;}
private:
Aws::String m_nextToken;
bool m_nextTokenHasBeenSet;
int m_maxResults;
bool m_maxResultsHasBeenSet;
};
} // namespace Model
} // namespace Synthetics
} // namespace Aws

View File

@@ -0,0 +1,138 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/synthetics/model/CanaryLastRun.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace Synthetics
{
namespace Model
{
class AWS_SYNTHETICS_API DescribeCanariesLastRunResult
{
public:
DescribeCanariesLastRunResult();
DescribeCanariesLastRunResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
DescribeCanariesLastRunResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>An array that contains the information from the most recent run of each
* canary.</p>
*/
inline const Aws::Vector<CanaryLastRun>& GetCanariesLastRun() const{ return m_canariesLastRun; }
/**
* <p>An array that contains the information from the most recent run of each
* canary.</p>
*/
inline void SetCanariesLastRun(const Aws::Vector<CanaryLastRun>& value) { m_canariesLastRun = value; }
/**
* <p>An array that contains the information from the most recent run of each
* canary.</p>
*/
inline void SetCanariesLastRun(Aws::Vector<CanaryLastRun>&& value) { m_canariesLastRun = std::move(value); }
/**
* <p>An array that contains the information from the most recent run of each
* canary.</p>
*/
inline DescribeCanariesLastRunResult& WithCanariesLastRun(const Aws::Vector<CanaryLastRun>& value) { SetCanariesLastRun(value); return *this;}
/**
* <p>An array that contains the information from the most recent run of each
* canary.</p>
*/
inline DescribeCanariesLastRunResult& WithCanariesLastRun(Aws::Vector<CanaryLastRun>&& value) { SetCanariesLastRun(std::move(value)); return *this;}
/**
* <p>An array that contains the information from the most recent run of each
* canary.</p>
*/
inline DescribeCanariesLastRunResult& AddCanariesLastRun(const CanaryLastRun& value) { m_canariesLastRun.push_back(value); return *this; }
/**
* <p>An array that contains the information from the most recent run of each
* canary.</p>
*/
inline DescribeCanariesLastRunResult& AddCanariesLastRun(CanaryLastRun&& value) { m_canariesLastRun.push_back(std::move(value)); return *this; }
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>DescribeCanariesLastRun</code> operation to retrieve
* the next set of results.</p>
*/
inline const Aws::String& GetNextToken() const{ return m_nextToken; }
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>DescribeCanariesLastRun</code> operation to retrieve
* the next set of results.</p>
*/
inline void SetNextToken(const Aws::String& value) { m_nextToken = value; }
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>DescribeCanariesLastRun</code> operation to retrieve
* the next set of results.</p>
*/
inline void SetNextToken(Aws::String&& value) { m_nextToken = std::move(value); }
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>DescribeCanariesLastRun</code> operation to retrieve
* the next set of results.</p>
*/
inline void SetNextToken(const char* value) { m_nextToken.assign(value); }
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>DescribeCanariesLastRun</code> operation to retrieve
* the next set of results.</p>
*/
inline DescribeCanariesLastRunResult& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;}
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>DescribeCanariesLastRun</code> operation to retrieve
* the next set of results.</p>
*/
inline DescribeCanariesLastRunResult& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;}
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>DescribeCanariesLastRun</code> operation to retrieve
* the next set of results.</p>
*/
inline DescribeCanariesLastRunResult& WithNextToken(const char* value) { SetNextToken(value); return *this;}
private:
Aws::Vector<CanaryLastRun> m_canariesLastRun;
Aws::String m_nextToken;
};
} // namespace Model
} // namespace Synthetics
} // namespace Aws

View File

@@ -0,0 +1,123 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
#include <aws/synthetics/SyntheticsRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Synthetics
{
namespace Model
{
/**
*/
class AWS_SYNTHETICS_API DescribeCanariesRequest : public SyntheticsRequest
{
public:
DescribeCanariesRequest();
// 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 "DescribeCanaries"; }
Aws::String SerializePayload() const override;
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent operation to retrieve the next set of results.</p>
*/
inline const Aws::String& GetNextToken() const{ return m_nextToken; }
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent operation to retrieve the next set of results.</p>
*/
inline bool NextTokenHasBeenSet() const { return m_nextTokenHasBeenSet; }
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent operation to retrieve the next set of results.</p>
*/
inline void SetNextToken(const Aws::String& value) { m_nextTokenHasBeenSet = true; m_nextToken = value; }
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent operation to retrieve the next set of results.</p>
*/
inline void SetNextToken(Aws::String&& value) { m_nextTokenHasBeenSet = true; m_nextToken = std::move(value); }
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent operation to retrieve the next set of results.</p>
*/
inline void SetNextToken(const char* value) { m_nextTokenHasBeenSet = true; m_nextToken.assign(value); }
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent operation to retrieve the next set of results.</p>
*/
inline DescribeCanariesRequest& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;}
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent operation to retrieve the next set of results.</p>
*/
inline DescribeCanariesRequest& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;}
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent operation to retrieve the next set of results.</p>
*/
inline DescribeCanariesRequest& WithNextToken(const char* value) { SetNextToken(value); return *this;}
/**
* <p>Specify this parameter to limit how many canaries are returned each time you
* use the <code>DescribeCanaries</code> operation. If you omit this parameter, the
* default of 100 is used.</p>
*/
inline int GetMaxResults() const{ return m_maxResults; }
/**
* <p>Specify this parameter to limit how many canaries are returned each time you
* use the <code>DescribeCanaries</code> operation. If you omit this parameter, the
* default of 100 is used.</p>
*/
inline bool MaxResultsHasBeenSet() const { return m_maxResultsHasBeenSet; }
/**
* <p>Specify this parameter to limit how many canaries are returned each time you
* use the <code>DescribeCanaries</code> operation. If you omit this parameter, the
* default of 100 is used.</p>
*/
inline void SetMaxResults(int value) { m_maxResultsHasBeenSet = true; m_maxResults = value; }
/**
* <p>Specify this parameter to limit how many canaries are returned each time you
* use the <code>DescribeCanaries</code> operation. If you omit this parameter, the
* default of 100 is used.</p>
*/
inline DescribeCanariesRequest& WithMaxResults(int value) { SetMaxResults(value); return *this;}
private:
Aws::String m_nextToken;
bool m_nextTokenHasBeenSet;
int m_maxResults;
bool m_maxResultsHasBeenSet;
};
} // namespace Model
} // namespace Synthetics
} // namespace Aws

View File

@@ -0,0 +1,138 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/synthetics/model/Canary.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace Synthetics
{
namespace Model
{
class AWS_SYNTHETICS_API DescribeCanariesResult
{
public:
DescribeCanariesResult();
DescribeCanariesResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
DescribeCanariesResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>Returns an array. Each item in the array contains the full information about
* one canary.</p>
*/
inline const Aws::Vector<Canary>& GetCanaries() const{ return m_canaries; }
/**
* <p>Returns an array. Each item in the array contains the full information about
* one canary.</p>
*/
inline void SetCanaries(const Aws::Vector<Canary>& value) { m_canaries = value; }
/**
* <p>Returns an array. Each item in the array contains the full information about
* one canary.</p>
*/
inline void SetCanaries(Aws::Vector<Canary>&& value) { m_canaries = std::move(value); }
/**
* <p>Returns an array. Each item in the array contains the full information about
* one canary.</p>
*/
inline DescribeCanariesResult& WithCanaries(const Aws::Vector<Canary>& value) { SetCanaries(value); return *this;}
/**
* <p>Returns an array. Each item in the array contains the full information about
* one canary.</p>
*/
inline DescribeCanariesResult& WithCanaries(Aws::Vector<Canary>&& value) { SetCanaries(std::move(value)); return *this;}
/**
* <p>Returns an array. Each item in the array contains the full information about
* one canary.</p>
*/
inline DescribeCanariesResult& AddCanaries(const Canary& value) { m_canaries.push_back(value); return *this; }
/**
* <p>Returns an array. Each item in the array contains the full information about
* one canary.</p>
*/
inline DescribeCanariesResult& AddCanaries(Canary&& value) { m_canaries.push_back(std::move(value)); return *this; }
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>DescribeCanaries</code> operation to retrieve the
* next set of results.</p>
*/
inline const Aws::String& GetNextToken() const{ return m_nextToken; }
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>DescribeCanaries</code> operation to retrieve the
* next set of results.</p>
*/
inline void SetNextToken(const Aws::String& value) { m_nextToken = value; }
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>DescribeCanaries</code> operation to retrieve the
* next set of results.</p>
*/
inline void SetNextToken(Aws::String&& value) { m_nextToken = std::move(value); }
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>DescribeCanaries</code> operation to retrieve the
* next set of results.</p>
*/
inline void SetNextToken(const char* value) { m_nextToken.assign(value); }
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>DescribeCanaries</code> operation to retrieve the
* next set of results.</p>
*/
inline DescribeCanariesResult& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;}
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>DescribeCanaries</code> operation to retrieve the
* next set of results.</p>
*/
inline DescribeCanariesResult& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;}
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>DescribeCanaries</code> operation to retrieve the
* next set of results.</p>
*/
inline DescribeCanariesResult& WithNextToken(const char* value) { SetNextToken(value); return *this;}
private:
Aws::Vector<Canary> m_canaries;
Aws::String m_nextToken;
};
} // namespace Model
} // namespace Synthetics
} // namespace Aws

View File

@@ -0,0 +1,131 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
#include <aws/synthetics/SyntheticsRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Synthetics
{
namespace Model
{
/**
*/
class AWS_SYNTHETICS_API DescribeRuntimeVersionsRequest : public SyntheticsRequest
{
public:
DescribeRuntimeVersionsRequest();
// 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 "DescribeRuntimeVersions"; }
Aws::String SerializePayload() const override;
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>DescribeRuntimeVersions</code> operation to retrieve
* the next set of results.</p>
*/
inline const Aws::String& GetNextToken() const{ return m_nextToken; }
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>DescribeRuntimeVersions</code> operation to retrieve
* the next set of results.</p>
*/
inline bool NextTokenHasBeenSet() const { return m_nextTokenHasBeenSet; }
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>DescribeRuntimeVersions</code> operation to retrieve
* the next set of results.</p>
*/
inline void SetNextToken(const Aws::String& value) { m_nextTokenHasBeenSet = true; m_nextToken = value; }
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>DescribeRuntimeVersions</code> operation to retrieve
* the next set of results.</p>
*/
inline void SetNextToken(Aws::String&& value) { m_nextTokenHasBeenSet = true; m_nextToken = std::move(value); }
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>DescribeRuntimeVersions</code> operation to retrieve
* the next set of results.</p>
*/
inline void SetNextToken(const char* value) { m_nextTokenHasBeenSet = true; m_nextToken.assign(value); }
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>DescribeRuntimeVersions</code> operation to retrieve
* the next set of results.</p>
*/
inline DescribeRuntimeVersionsRequest& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;}
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>DescribeRuntimeVersions</code> operation to retrieve
* the next set of results.</p>
*/
inline DescribeRuntimeVersionsRequest& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;}
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>DescribeRuntimeVersions</code> operation to retrieve
* the next set of results.</p>
*/
inline DescribeRuntimeVersionsRequest& WithNextToken(const char* value) { SetNextToken(value); return *this;}
/**
* <p>Specify this parameter to limit how many runs are returned each time you use
* the <code>DescribeRuntimeVersions</code> operation. If you omit this parameter,
* the default of 100 is used.</p>
*/
inline int GetMaxResults() const{ return m_maxResults; }
/**
* <p>Specify this parameter to limit how many runs are returned each time you use
* the <code>DescribeRuntimeVersions</code> operation. If you omit this parameter,
* the default of 100 is used.</p>
*/
inline bool MaxResultsHasBeenSet() const { return m_maxResultsHasBeenSet; }
/**
* <p>Specify this parameter to limit how many runs are returned each time you use
* the <code>DescribeRuntimeVersions</code> operation. If you omit this parameter,
* the default of 100 is used.</p>
*/
inline void SetMaxResults(int value) { m_maxResultsHasBeenSet = true; m_maxResults = value; }
/**
* <p>Specify this parameter to limit how many runs are returned each time you use
* the <code>DescribeRuntimeVersions</code> operation. If you omit this parameter,
* the default of 100 is used.</p>
*/
inline DescribeRuntimeVersionsRequest& WithMaxResults(int value) { SetMaxResults(value); return *this;}
private:
Aws::String m_nextToken;
bool m_nextTokenHasBeenSet;
int m_maxResults;
bool m_maxResultsHasBeenSet;
};
} // namespace Model
} // namespace Synthetics
} // namespace Aws

View File

@@ -0,0 +1,138 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/synthetics/model/RuntimeVersion.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace Synthetics
{
namespace Model
{
class AWS_SYNTHETICS_API DescribeRuntimeVersionsResult
{
public:
DescribeRuntimeVersionsResult();
DescribeRuntimeVersionsResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
DescribeRuntimeVersionsResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>An array of objects that display the details about each Synthetics canary
* runtime version.</p>
*/
inline const Aws::Vector<RuntimeVersion>& GetRuntimeVersions() const{ return m_runtimeVersions; }
/**
* <p>An array of objects that display the details about each Synthetics canary
* runtime version.</p>
*/
inline void SetRuntimeVersions(const Aws::Vector<RuntimeVersion>& value) { m_runtimeVersions = value; }
/**
* <p>An array of objects that display the details about each Synthetics canary
* runtime version.</p>
*/
inline void SetRuntimeVersions(Aws::Vector<RuntimeVersion>&& value) { m_runtimeVersions = std::move(value); }
/**
* <p>An array of objects that display the details about each Synthetics canary
* runtime version.</p>
*/
inline DescribeRuntimeVersionsResult& WithRuntimeVersions(const Aws::Vector<RuntimeVersion>& value) { SetRuntimeVersions(value); return *this;}
/**
* <p>An array of objects that display the details about each Synthetics canary
* runtime version.</p>
*/
inline DescribeRuntimeVersionsResult& WithRuntimeVersions(Aws::Vector<RuntimeVersion>&& value) { SetRuntimeVersions(std::move(value)); return *this;}
/**
* <p>An array of objects that display the details about each Synthetics canary
* runtime version.</p>
*/
inline DescribeRuntimeVersionsResult& AddRuntimeVersions(const RuntimeVersion& value) { m_runtimeVersions.push_back(value); return *this; }
/**
* <p>An array of objects that display the details about each Synthetics canary
* runtime version.</p>
*/
inline DescribeRuntimeVersionsResult& AddRuntimeVersions(RuntimeVersion&& value) { m_runtimeVersions.push_back(std::move(value)); return *this; }
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>DescribeRuntimeVersions</code> operation to retrieve
* the next set of results.</p>
*/
inline const Aws::String& GetNextToken() const{ return m_nextToken; }
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>DescribeRuntimeVersions</code> operation to retrieve
* the next set of results.</p>
*/
inline void SetNextToken(const Aws::String& value) { m_nextToken = value; }
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>DescribeRuntimeVersions</code> operation to retrieve
* the next set of results.</p>
*/
inline void SetNextToken(Aws::String&& value) { m_nextToken = std::move(value); }
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>DescribeRuntimeVersions</code> operation to retrieve
* the next set of results.</p>
*/
inline void SetNextToken(const char* value) { m_nextToken.assign(value); }
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>DescribeRuntimeVersions</code> operation to retrieve
* the next set of results.</p>
*/
inline DescribeRuntimeVersionsResult& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;}
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>DescribeRuntimeVersions</code> operation to retrieve
* the next set of results.</p>
*/
inline DescribeRuntimeVersionsResult& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;}
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>DescribeRuntimeVersions</code> operation to retrieve
* the next set of results.</p>
*/
inline DescribeRuntimeVersionsResult& WithNextToken(const char* value) { SetNextToken(value); return *this;}
private:
Aws::Vector<RuntimeVersion> m_runtimeVersions;
Aws::String m_nextToken;
};
} // namespace Model
} // namespace Synthetics
} // namespace Aws

View File

@@ -0,0 +1,83 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
#include <aws/synthetics/SyntheticsRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Synthetics
{
namespace Model
{
/**
*/
class AWS_SYNTHETICS_API GetCanaryRequest : public SyntheticsRequest
{
public:
GetCanaryRequest();
// 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 "GetCanary"; }
Aws::String SerializePayload() const override;
/**
* <p>The name of the canary that you want details for.</p>
*/
inline const Aws::String& GetName() const{ return m_name; }
/**
* <p>The name of the canary that you want details for.</p>
*/
inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
/**
* <p>The name of the canary that you want details for.</p>
*/
inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; }
/**
* <p>The name of the canary that you want details for.</p>
*/
inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); }
/**
* <p>The name of the canary that you want details for.</p>
*/
inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); }
/**
* <p>The name of the canary that you want details for.</p>
*/
inline GetCanaryRequest& WithName(const Aws::String& value) { SetName(value); return *this;}
/**
* <p>The name of the canary that you want details for.</p>
*/
inline GetCanaryRequest& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;}
/**
* <p>The name of the canary that you want details for.</p>
*/
inline GetCanaryRequest& WithName(const char* value) { SetName(value); return *this;}
private:
Aws::String m_name;
bool m_nameHasBeenSet;
};
} // namespace Model
} // namespace Synthetics
} // namespace Aws

View File

@@ -0,0 +1,67 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
#include <aws/synthetics/model/Canary.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace Synthetics
{
namespace Model
{
class AWS_SYNTHETICS_API GetCanaryResult
{
public:
GetCanaryResult();
GetCanaryResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
GetCanaryResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>A strucure that contains the full information about the canary.</p>
*/
inline const Canary& GetCanary() const{ return m_canary; }
/**
* <p>A strucure that contains the full information about the canary.</p>
*/
inline void SetCanary(const Canary& value) { m_canary = value; }
/**
* <p>A strucure that contains the full information about the canary.</p>
*/
inline void SetCanary(Canary&& value) { m_canary = std::move(value); }
/**
* <p>A strucure that contains the full information about the canary.</p>
*/
inline GetCanaryResult& WithCanary(const Canary& value) { SetCanary(value); return *this;}
/**
* <p>A strucure that contains the full information about the canary.</p>
*/
inline GetCanaryResult& WithCanary(Canary&& value) { SetCanary(std::move(value)); return *this;}
private:
Canary m_canary;
};
} // namespace Model
} // namespace Synthetics
} // namespace Aws

View File

@@ -0,0 +1,175 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
#include <aws/synthetics/SyntheticsRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Synthetics
{
namespace Model
{
/**
*/
class AWS_SYNTHETICS_API GetCanaryRunsRequest : public SyntheticsRequest
{
public:
GetCanaryRunsRequest();
// 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 "GetCanaryRuns"; }
Aws::String SerializePayload() const override;
/**
* <p>The name of the canary that you want to see runs for.</p>
*/
inline const Aws::String& GetName() const{ return m_name; }
/**
* <p>The name of the canary that you want to see runs for.</p>
*/
inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
/**
* <p>The name of the canary that you want to see runs for.</p>
*/
inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; }
/**
* <p>The name of the canary that you want to see runs for.</p>
*/
inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); }
/**
* <p>The name of the canary that you want to see runs for.</p>
*/
inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); }
/**
* <p>The name of the canary that you want to see runs for.</p>
*/
inline GetCanaryRunsRequest& WithName(const Aws::String& value) { SetName(value); return *this;}
/**
* <p>The name of the canary that you want to see runs for.</p>
*/
inline GetCanaryRunsRequest& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;}
/**
* <p>The name of the canary that you want to see runs for.</p>
*/
inline GetCanaryRunsRequest& WithName(const char* value) { SetName(value); return *this;}
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>GetCanaryRuns</code> operation to retrieve the next
* set of results.</p>
*/
inline const Aws::String& GetNextToken() const{ return m_nextToken; }
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>GetCanaryRuns</code> operation to retrieve the next
* set of results.</p>
*/
inline bool NextTokenHasBeenSet() const { return m_nextTokenHasBeenSet; }
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>GetCanaryRuns</code> operation to retrieve the next
* set of results.</p>
*/
inline void SetNextToken(const Aws::String& value) { m_nextTokenHasBeenSet = true; m_nextToken = value; }
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>GetCanaryRuns</code> operation to retrieve the next
* set of results.</p>
*/
inline void SetNextToken(Aws::String&& value) { m_nextTokenHasBeenSet = true; m_nextToken = std::move(value); }
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>GetCanaryRuns</code> operation to retrieve the next
* set of results.</p>
*/
inline void SetNextToken(const char* value) { m_nextTokenHasBeenSet = true; m_nextToken.assign(value); }
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>GetCanaryRuns</code> operation to retrieve the next
* set of results.</p>
*/
inline GetCanaryRunsRequest& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;}
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>GetCanaryRuns</code> operation to retrieve the next
* set of results.</p>
*/
inline GetCanaryRunsRequest& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;}
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>GetCanaryRuns</code> operation to retrieve the next
* set of results.</p>
*/
inline GetCanaryRunsRequest& WithNextToken(const char* value) { SetNextToken(value); return *this;}
/**
* <p>Specify this parameter to limit how many runs are returned each time you use
* the <code>GetCanaryRuns</code> operation. If you omit this parameter, the
* default of 100 is used.</p>
*/
inline int GetMaxResults() const{ return m_maxResults; }
/**
* <p>Specify this parameter to limit how many runs are returned each time you use
* the <code>GetCanaryRuns</code> operation. If you omit this parameter, the
* default of 100 is used.</p>
*/
inline bool MaxResultsHasBeenSet() const { return m_maxResultsHasBeenSet; }
/**
* <p>Specify this parameter to limit how many runs are returned each time you use
* the <code>GetCanaryRuns</code> operation. If you omit this parameter, the
* default of 100 is used.</p>
*/
inline void SetMaxResults(int value) { m_maxResultsHasBeenSet = true; m_maxResults = value; }
/**
* <p>Specify this parameter to limit how many runs are returned each time you use
* the <code>GetCanaryRuns</code> operation. If you omit this parameter, the
* default of 100 is used.</p>
*/
inline GetCanaryRunsRequest& WithMaxResults(int value) { SetMaxResults(value); return *this;}
private:
Aws::String m_name;
bool m_nameHasBeenSet;
Aws::String m_nextToken;
bool m_nextTokenHasBeenSet;
int m_maxResults;
bool m_maxResultsHasBeenSet;
};
} // namespace Model
} // namespace Synthetics
} // namespace Aws

View File

@@ -0,0 +1,138 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/synthetics/model/CanaryRun.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace Synthetics
{
namespace Model
{
class AWS_SYNTHETICS_API GetCanaryRunsResult
{
public:
GetCanaryRunsResult();
GetCanaryRunsResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
GetCanaryRunsResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>An array of structures. Each structure contains the details of one of the
* retrieved canary runs.</p>
*/
inline const Aws::Vector<CanaryRun>& GetCanaryRuns() const{ return m_canaryRuns; }
/**
* <p>An array of structures. Each structure contains the details of one of the
* retrieved canary runs.</p>
*/
inline void SetCanaryRuns(const Aws::Vector<CanaryRun>& value) { m_canaryRuns = value; }
/**
* <p>An array of structures. Each structure contains the details of one of the
* retrieved canary runs.</p>
*/
inline void SetCanaryRuns(Aws::Vector<CanaryRun>&& value) { m_canaryRuns = std::move(value); }
/**
* <p>An array of structures. Each structure contains the details of one of the
* retrieved canary runs.</p>
*/
inline GetCanaryRunsResult& WithCanaryRuns(const Aws::Vector<CanaryRun>& value) { SetCanaryRuns(value); return *this;}
/**
* <p>An array of structures. Each structure contains the details of one of the
* retrieved canary runs.</p>
*/
inline GetCanaryRunsResult& WithCanaryRuns(Aws::Vector<CanaryRun>&& value) { SetCanaryRuns(std::move(value)); return *this;}
/**
* <p>An array of structures. Each structure contains the details of one of the
* retrieved canary runs.</p>
*/
inline GetCanaryRunsResult& AddCanaryRuns(const CanaryRun& value) { m_canaryRuns.push_back(value); return *this; }
/**
* <p>An array of structures. Each structure contains the details of one of the
* retrieved canary runs.</p>
*/
inline GetCanaryRunsResult& AddCanaryRuns(CanaryRun&& value) { m_canaryRuns.push_back(std::move(value)); return *this; }
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>GetCanaryRuns</code> operation to retrieve the next
* set of results.</p>
*/
inline const Aws::String& GetNextToken() const{ return m_nextToken; }
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>GetCanaryRuns</code> operation to retrieve the next
* set of results.</p>
*/
inline void SetNextToken(const Aws::String& value) { m_nextToken = value; }
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>GetCanaryRuns</code> operation to retrieve the next
* set of results.</p>
*/
inline void SetNextToken(Aws::String&& value) { m_nextToken = std::move(value); }
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>GetCanaryRuns</code> operation to retrieve the next
* set of results.</p>
*/
inline void SetNextToken(const char* value) { m_nextToken.assign(value); }
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>GetCanaryRuns</code> operation to retrieve the next
* set of results.</p>
*/
inline GetCanaryRunsResult& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;}
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>GetCanaryRuns</code> operation to retrieve the next
* set of results.</p>
*/
inline GetCanaryRunsResult& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;}
/**
* <p>A token that indicates that there is more data available. You can use this
* token in a subsequent <code>GetCanaryRuns</code> operation to retrieve the next
* set of results.</p>
*/
inline GetCanaryRunsResult& WithNextToken(const char* value) { SetNextToken(value); return *this;}
private:
Aws::Vector<CanaryRun> m_canaryRuns;
Aws::String m_nextToken;
};
} // namespace Model
} // namespace Synthetics
} // namespace Aws

View File

@@ -0,0 +1,107 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
#include <aws/synthetics/SyntheticsRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Synthetics
{
namespace Model
{
/**
*/
class AWS_SYNTHETICS_API ListTagsForResourceRequest : public SyntheticsRequest
{
public:
ListTagsForResourceRequest();
// 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 "ListTagsForResource"; }
Aws::String SerializePayload() const override;
/**
* <p>The ARN of the canary that you want to view tags for.</p> <p>The ARN format
* of a canary is
* <code>arn:aws:synthetics:<i>Region</i>:<i>account-id</i>:canary:<i>canary-name</i>
* </code>.</p>
*/
inline const Aws::String& GetResourceArn() const{ return m_resourceArn; }
/**
* <p>The ARN of the canary that you want to view tags for.</p> <p>The ARN format
* of a canary is
* <code>arn:aws:synthetics:<i>Region</i>:<i>account-id</i>:canary:<i>canary-name</i>
* </code>.</p>
*/
inline bool ResourceArnHasBeenSet() const { return m_resourceArnHasBeenSet; }
/**
* <p>The ARN of the canary that you want to view tags for.</p> <p>The ARN format
* of a canary is
* <code>arn:aws:synthetics:<i>Region</i>:<i>account-id</i>:canary:<i>canary-name</i>
* </code>.</p>
*/
inline void SetResourceArn(const Aws::String& value) { m_resourceArnHasBeenSet = true; m_resourceArn = value; }
/**
* <p>The ARN of the canary that you want to view tags for.</p> <p>The ARN format
* of a canary is
* <code>arn:aws:synthetics:<i>Region</i>:<i>account-id</i>:canary:<i>canary-name</i>
* </code>.</p>
*/
inline void SetResourceArn(Aws::String&& value) { m_resourceArnHasBeenSet = true; m_resourceArn = std::move(value); }
/**
* <p>The ARN of the canary that you want to view tags for.</p> <p>The ARN format
* of a canary is
* <code>arn:aws:synthetics:<i>Region</i>:<i>account-id</i>:canary:<i>canary-name</i>
* </code>.</p>
*/
inline void SetResourceArn(const char* value) { m_resourceArnHasBeenSet = true; m_resourceArn.assign(value); }
/**
* <p>The ARN of the canary that you want to view tags for.</p> <p>The ARN format
* of a canary is
* <code>arn:aws:synthetics:<i>Region</i>:<i>account-id</i>:canary:<i>canary-name</i>
* </code>.</p>
*/
inline ListTagsForResourceRequest& WithResourceArn(const Aws::String& value) { SetResourceArn(value); return *this;}
/**
* <p>The ARN of the canary that you want to view tags for.</p> <p>The ARN format
* of a canary is
* <code>arn:aws:synthetics:<i>Region</i>:<i>account-id</i>:canary:<i>canary-name</i>
* </code>.</p>
*/
inline ListTagsForResourceRequest& WithResourceArn(Aws::String&& value) { SetResourceArn(std::move(value)); return *this;}
/**
* <p>The ARN of the canary that you want to view tags for.</p> <p>The ARN format
* of a canary is
* <code>arn:aws:synthetics:<i>Region</i>:<i>account-id</i>:canary:<i>canary-name</i>
* </code>.</p>
*/
inline ListTagsForResourceRequest& WithResourceArn(const char* value) { SetResourceArn(value); return *this;}
private:
Aws::String m_resourceArn;
bool m_resourceArnHasBeenSet;
};
} // namespace Model
} // namespace Synthetics
} // namespace Aws

View File

@@ -0,0 +1,115 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSMap.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace Synthetics
{
namespace Model
{
class AWS_SYNTHETICS_API ListTagsForResourceResult
{
public:
ListTagsForResourceResult();
ListTagsForResourceResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
ListTagsForResourceResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>The list of tag keys and values associated with the canary that you
* specified.</p>
*/
inline const Aws::Map<Aws::String, Aws::String>& GetTags() const{ return m_tags; }
/**
* <p>The list of tag keys and values associated with the canary that you
* specified.</p>
*/
inline void SetTags(const Aws::Map<Aws::String, Aws::String>& value) { m_tags = value; }
/**
* <p>The list of tag keys and values associated with the canary that you
* specified.</p>
*/
inline void SetTags(Aws::Map<Aws::String, Aws::String>&& value) { m_tags = std::move(value); }
/**
* <p>The list of tag keys and values associated with the canary that you
* specified.</p>
*/
inline ListTagsForResourceResult& WithTags(const Aws::Map<Aws::String, Aws::String>& value) { SetTags(value); return *this;}
/**
* <p>The list of tag keys and values associated with the canary that you
* specified.</p>
*/
inline ListTagsForResourceResult& WithTags(Aws::Map<Aws::String, Aws::String>&& value) { SetTags(std::move(value)); return *this;}
/**
* <p>The list of tag keys and values associated with the canary that you
* specified.</p>
*/
inline ListTagsForResourceResult& AddTags(const Aws::String& key, const Aws::String& value) { m_tags.emplace(key, value); return *this; }
/**
* <p>The list of tag keys and values associated with the canary that you
* specified.</p>
*/
inline ListTagsForResourceResult& AddTags(Aws::String&& key, const Aws::String& value) { m_tags.emplace(std::move(key), value); return *this; }
/**
* <p>The list of tag keys and values associated with the canary that you
* specified.</p>
*/
inline ListTagsForResourceResult& AddTags(const Aws::String& key, Aws::String&& value) { m_tags.emplace(key, std::move(value)); return *this; }
/**
* <p>The list of tag keys and values associated with the canary that you
* specified.</p>
*/
inline ListTagsForResourceResult& AddTags(Aws::String&& key, Aws::String&& value) { m_tags.emplace(std::move(key), std::move(value)); return *this; }
/**
* <p>The list of tag keys and values associated with the canary that you
* specified.</p>
*/
inline ListTagsForResourceResult& AddTags(const char* key, Aws::String&& value) { m_tags.emplace(key, std::move(value)); return *this; }
/**
* <p>The list of tag keys and values associated with the canary that you
* specified.</p>
*/
inline ListTagsForResourceResult& AddTags(Aws::String&& key, const char* value) { m_tags.emplace(std::move(key), value); return *this; }
/**
* <p>The list of tag keys and values associated with the canary that you
* specified.</p>
*/
inline ListTagsForResourceResult& AddTags(const char* key, const char* value) { m_tags.emplace(key, value); return *this; }
private:
Aws::Map<Aws::String, Aws::String> m_tags;
};
} // namespace Model
} // namespace Synthetics
} // namespace Aws

View File

@@ -0,0 +1,226 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/DateTime.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace Synthetics
{
namespace Model
{
/**
* <p>This structure contains information about one canary runtime version. For
* more information about runtime versions, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_Library.html">
* Canary Runtime Versions</a>.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/RuntimeVersion">AWS
* API Reference</a></p>
*/
class AWS_SYNTHETICS_API RuntimeVersion
{
public:
RuntimeVersion();
RuntimeVersion(Aws::Utils::Json::JsonView jsonValue);
RuntimeVersion& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>The name of the runtime version. Currently, the only valid value is
* <code>syn-1.0</code>. </p> <p>Specifies the runtime version to use for the
* canary. Currently, the only valid value is <code>syn-1.0</code>.</p>
*/
inline const Aws::String& GetVersionName() const{ return m_versionName; }
/**
* <p>The name of the runtime version. Currently, the only valid value is
* <code>syn-1.0</code>. </p> <p>Specifies the runtime version to use for the
* canary. Currently, the only valid value is <code>syn-1.0</code>.</p>
*/
inline bool VersionNameHasBeenSet() const { return m_versionNameHasBeenSet; }
/**
* <p>The name of the runtime version. Currently, the only valid value is
* <code>syn-1.0</code>. </p> <p>Specifies the runtime version to use for the
* canary. Currently, the only valid value is <code>syn-1.0</code>.</p>
*/
inline void SetVersionName(const Aws::String& value) { m_versionNameHasBeenSet = true; m_versionName = value; }
/**
* <p>The name of the runtime version. Currently, the only valid value is
* <code>syn-1.0</code>. </p> <p>Specifies the runtime version to use for the
* canary. Currently, the only valid value is <code>syn-1.0</code>.</p>
*/
inline void SetVersionName(Aws::String&& value) { m_versionNameHasBeenSet = true; m_versionName = std::move(value); }
/**
* <p>The name of the runtime version. Currently, the only valid value is
* <code>syn-1.0</code>. </p> <p>Specifies the runtime version to use for the
* canary. Currently, the only valid value is <code>syn-1.0</code>.</p>
*/
inline void SetVersionName(const char* value) { m_versionNameHasBeenSet = true; m_versionName.assign(value); }
/**
* <p>The name of the runtime version. Currently, the only valid value is
* <code>syn-1.0</code>. </p> <p>Specifies the runtime version to use for the
* canary. Currently, the only valid value is <code>syn-1.0</code>.</p>
*/
inline RuntimeVersion& WithVersionName(const Aws::String& value) { SetVersionName(value); return *this;}
/**
* <p>The name of the runtime version. Currently, the only valid value is
* <code>syn-1.0</code>. </p> <p>Specifies the runtime version to use for the
* canary. Currently, the only valid value is <code>syn-1.0</code>.</p>
*/
inline RuntimeVersion& WithVersionName(Aws::String&& value) { SetVersionName(std::move(value)); return *this;}
/**
* <p>The name of the runtime version. Currently, the only valid value is
* <code>syn-1.0</code>. </p> <p>Specifies the runtime version to use for the
* canary. Currently, the only valid value is <code>syn-1.0</code>.</p>
*/
inline RuntimeVersion& WithVersionName(const char* value) { SetVersionName(value); return *this;}
/**
* <p>A description of the runtime version, created by Amazon.</p>
*/
inline const Aws::String& GetDescription() const{ return m_description; }
/**
* <p>A description of the runtime version, created by Amazon.</p>
*/
inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
/**
* <p>A description of the runtime version, created by Amazon.</p>
*/
inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; }
/**
* <p>A description of the runtime version, created by Amazon.</p>
*/
inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); }
/**
* <p>A description of the runtime version, created by Amazon.</p>
*/
inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); }
/**
* <p>A description of the runtime version, created by Amazon.</p>
*/
inline RuntimeVersion& WithDescription(const Aws::String& value) { SetDescription(value); return *this;}
/**
* <p>A description of the runtime version, created by Amazon.</p>
*/
inline RuntimeVersion& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;}
/**
* <p>A description of the runtime version, created by Amazon.</p>
*/
inline RuntimeVersion& WithDescription(const char* value) { SetDescription(value); return *this;}
/**
* <p>The date that the runtime version was released.</p>
*/
inline const Aws::Utils::DateTime& GetReleaseDate() const{ return m_releaseDate; }
/**
* <p>The date that the runtime version was released.</p>
*/
inline bool ReleaseDateHasBeenSet() const { return m_releaseDateHasBeenSet; }
/**
* <p>The date that the runtime version was released.</p>
*/
inline void SetReleaseDate(const Aws::Utils::DateTime& value) { m_releaseDateHasBeenSet = true; m_releaseDate = value; }
/**
* <p>The date that the runtime version was released.</p>
*/
inline void SetReleaseDate(Aws::Utils::DateTime&& value) { m_releaseDateHasBeenSet = true; m_releaseDate = std::move(value); }
/**
* <p>The date that the runtime version was released.</p>
*/
inline RuntimeVersion& WithReleaseDate(const Aws::Utils::DateTime& value) { SetReleaseDate(value); return *this;}
/**
* <p>The date that the runtime version was released.</p>
*/
inline RuntimeVersion& WithReleaseDate(Aws::Utils::DateTime&& value) { SetReleaseDate(std::move(value)); return *this;}
/**
* <p>If this runtime version is deprecated, this value is the date of
* deprecation.</p>
*/
inline const Aws::Utils::DateTime& GetDeprecationDate() const{ return m_deprecationDate; }
/**
* <p>If this runtime version is deprecated, this value is the date of
* deprecation.</p>
*/
inline bool DeprecationDateHasBeenSet() const { return m_deprecationDateHasBeenSet; }
/**
* <p>If this runtime version is deprecated, this value is the date of
* deprecation.</p>
*/
inline void SetDeprecationDate(const Aws::Utils::DateTime& value) { m_deprecationDateHasBeenSet = true; m_deprecationDate = value; }
/**
* <p>If this runtime version is deprecated, this value is the date of
* deprecation.</p>
*/
inline void SetDeprecationDate(Aws::Utils::DateTime&& value) { m_deprecationDateHasBeenSet = true; m_deprecationDate = std::move(value); }
/**
* <p>If this runtime version is deprecated, this value is the date of
* deprecation.</p>
*/
inline RuntimeVersion& WithDeprecationDate(const Aws::Utils::DateTime& value) { SetDeprecationDate(value); return *this;}
/**
* <p>If this runtime version is deprecated, this value is the date of
* deprecation.</p>
*/
inline RuntimeVersion& WithDeprecationDate(Aws::Utils::DateTime&& value) { SetDeprecationDate(std::move(value)); return *this;}
private:
Aws::String m_versionName;
bool m_versionNameHasBeenSet;
Aws::String m_description;
bool m_descriptionHasBeenSet;
Aws::Utils::DateTime m_releaseDate;
bool m_releaseDateHasBeenSet;
Aws::Utils::DateTime m_deprecationDate;
bool m_deprecationDateHasBeenSet;
};
} // namespace Model
} // namespace Synthetics
} // namespace Aws

View File

@@ -0,0 +1,91 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
#include <aws/synthetics/SyntheticsRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Synthetics
{
namespace Model
{
/**
*/
class AWS_SYNTHETICS_API StartCanaryRequest : public SyntheticsRequest
{
public:
StartCanaryRequest();
// 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 "StartCanary"; }
Aws::String SerializePayload() const override;
/**
* <p>The name of the canary that you want to run. To find canary names, use <a
* href="https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_DescribeCanaries.html">DescribeCanaries</a>.</p>
*/
inline const Aws::String& GetName() const{ return m_name; }
/**
* <p>The name of the canary that you want to run. To find canary names, use <a
* href="https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_DescribeCanaries.html">DescribeCanaries</a>.</p>
*/
inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
/**
* <p>The name of the canary that you want to run. To find canary names, use <a
* href="https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_DescribeCanaries.html">DescribeCanaries</a>.</p>
*/
inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; }
/**
* <p>The name of the canary that you want to run. To find canary names, use <a
* href="https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_DescribeCanaries.html">DescribeCanaries</a>.</p>
*/
inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); }
/**
* <p>The name of the canary that you want to run. To find canary names, use <a
* href="https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_DescribeCanaries.html">DescribeCanaries</a>.</p>
*/
inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); }
/**
* <p>The name of the canary that you want to run. To find canary names, use <a
* href="https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_DescribeCanaries.html">DescribeCanaries</a>.</p>
*/
inline StartCanaryRequest& WithName(const Aws::String& value) { SetName(value); return *this;}
/**
* <p>The name of the canary that you want to run. To find canary names, use <a
* href="https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_DescribeCanaries.html">DescribeCanaries</a>.</p>
*/
inline StartCanaryRequest& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;}
/**
* <p>The name of the canary that you want to run. To find canary names, use <a
* href="https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_DescribeCanaries.html">DescribeCanaries</a>.</p>
*/
inline StartCanaryRequest& WithName(const char* value) { SetName(value); return *this;}
private:
Aws::String m_name;
bool m_nameHasBeenSet;
};
} // namespace Model
} // namespace Synthetics
} // namespace Aws

View File

@@ -0,0 +1,36 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace Synthetics
{
namespace Model
{
class AWS_SYNTHETICS_API StartCanaryResult
{
public:
StartCanaryResult();
StartCanaryResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
StartCanaryResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
};
} // namespace Model
} // namespace Synthetics
} // namespace Aws

View File

@@ -0,0 +1,99 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
#include <aws/synthetics/SyntheticsRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Synthetics
{
namespace Model
{
/**
*/
class AWS_SYNTHETICS_API StopCanaryRequest : public SyntheticsRequest
{
public:
StopCanaryRequest();
// 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 "StopCanary"; }
Aws::String SerializePayload() const override;
/**
* <p>The name of the canary that you want to stop. To find the names of your
* canaries, use <a
* href="https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_DescribeCanaries.html">DescribeCanaries</a>.</p>
*/
inline const Aws::String& GetName() const{ return m_name; }
/**
* <p>The name of the canary that you want to stop. To find the names of your
* canaries, use <a
* href="https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_DescribeCanaries.html">DescribeCanaries</a>.</p>
*/
inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
/**
* <p>The name of the canary that you want to stop. To find the names of your
* canaries, use <a
* href="https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_DescribeCanaries.html">DescribeCanaries</a>.</p>
*/
inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; }
/**
* <p>The name of the canary that you want to stop. To find the names of your
* canaries, use <a
* href="https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_DescribeCanaries.html">DescribeCanaries</a>.</p>
*/
inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); }
/**
* <p>The name of the canary that you want to stop. To find the names of your
* canaries, use <a
* href="https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_DescribeCanaries.html">DescribeCanaries</a>.</p>
*/
inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); }
/**
* <p>The name of the canary that you want to stop. To find the names of your
* canaries, use <a
* href="https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_DescribeCanaries.html">DescribeCanaries</a>.</p>
*/
inline StopCanaryRequest& WithName(const Aws::String& value) { SetName(value); return *this;}
/**
* <p>The name of the canary that you want to stop. To find the names of your
* canaries, use <a
* href="https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_DescribeCanaries.html">DescribeCanaries</a>.</p>
*/
inline StopCanaryRequest& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;}
/**
* <p>The name of the canary that you want to stop. To find the names of your
* canaries, use <a
* href="https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_DescribeCanaries.html">DescribeCanaries</a>.</p>
*/
inline StopCanaryRequest& WithName(const char* value) { SetName(value); return *this;}
private:
Aws::String m_name;
bool m_nameHasBeenSet;
};
} // namespace Model
} // namespace Synthetics
} // namespace Aws

View File

@@ -0,0 +1,36 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace Synthetics
{
namespace Model
{
class AWS_SYNTHETICS_API StopCanaryResult
{
public:
StopCanaryResult();
StopCanaryResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
StopCanaryResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
};
} // namespace Model
} // namespace Synthetics
} // namespace Aws

View File

@@ -0,0 +1,177 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
#include <aws/synthetics/SyntheticsRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/memory/stl/AWSMap.h>
#include <utility>
namespace Aws
{
namespace Synthetics
{
namespace Model
{
/**
*/
class AWS_SYNTHETICS_API TagResourceRequest : public SyntheticsRequest
{
public:
TagResourceRequest();
// 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 "TagResource"; }
Aws::String SerializePayload() const override;
/**
* <p>The ARN of the canary that you're adding tags to.</p> <p>The ARN format of a
* canary is
* <code>arn:aws:synthetics:<i>Region</i>:<i>account-id</i>:canary:<i>canary-name</i>
* </code>.</p>
*/
inline const Aws::String& GetResourceArn() const{ return m_resourceArn; }
/**
* <p>The ARN of the canary that you're adding tags to.</p> <p>The ARN format of a
* canary is
* <code>arn:aws:synthetics:<i>Region</i>:<i>account-id</i>:canary:<i>canary-name</i>
* </code>.</p>
*/
inline bool ResourceArnHasBeenSet() const { return m_resourceArnHasBeenSet; }
/**
* <p>The ARN of the canary that you're adding tags to.</p> <p>The ARN format of a
* canary is
* <code>arn:aws:synthetics:<i>Region</i>:<i>account-id</i>:canary:<i>canary-name</i>
* </code>.</p>
*/
inline void SetResourceArn(const Aws::String& value) { m_resourceArnHasBeenSet = true; m_resourceArn = value; }
/**
* <p>The ARN of the canary that you're adding tags to.</p> <p>The ARN format of a
* canary is
* <code>arn:aws:synthetics:<i>Region</i>:<i>account-id</i>:canary:<i>canary-name</i>
* </code>.</p>
*/
inline void SetResourceArn(Aws::String&& value) { m_resourceArnHasBeenSet = true; m_resourceArn = std::move(value); }
/**
* <p>The ARN of the canary that you're adding tags to.</p> <p>The ARN format of a
* canary is
* <code>arn:aws:synthetics:<i>Region</i>:<i>account-id</i>:canary:<i>canary-name</i>
* </code>.</p>
*/
inline void SetResourceArn(const char* value) { m_resourceArnHasBeenSet = true; m_resourceArn.assign(value); }
/**
* <p>The ARN of the canary that you're adding tags to.</p> <p>The ARN format of a
* canary is
* <code>arn:aws:synthetics:<i>Region</i>:<i>account-id</i>:canary:<i>canary-name</i>
* </code>.</p>
*/
inline TagResourceRequest& WithResourceArn(const Aws::String& value) { SetResourceArn(value); return *this;}
/**
* <p>The ARN of the canary that you're adding tags to.</p> <p>The ARN format of a
* canary is
* <code>arn:aws:synthetics:<i>Region</i>:<i>account-id</i>:canary:<i>canary-name</i>
* </code>.</p>
*/
inline TagResourceRequest& WithResourceArn(Aws::String&& value) { SetResourceArn(std::move(value)); return *this;}
/**
* <p>The ARN of the canary that you're adding tags to.</p> <p>The ARN format of a
* canary is
* <code>arn:aws:synthetics:<i>Region</i>:<i>account-id</i>:canary:<i>canary-name</i>
* </code>.</p>
*/
inline TagResourceRequest& WithResourceArn(const char* value) { SetResourceArn(value); return *this;}
/**
* <p>The list of key-value pairs to associate with the canary.</p>
*/
inline const Aws::Map<Aws::String, Aws::String>& GetTags() const{ return m_tags; }
/**
* <p>The list of key-value pairs to associate with the canary.</p>
*/
inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
/**
* <p>The list of key-value pairs to associate with the canary.</p>
*/
inline void SetTags(const Aws::Map<Aws::String, Aws::String>& value) { m_tagsHasBeenSet = true; m_tags = value; }
/**
* <p>The list of key-value pairs to associate with the canary.</p>
*/
inline void SetTags(Aws::Map<Aws::String, Aws::String>&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); }
/**
* <p>The list of key-value pairs to associate with the canary.</p>
*/
inline TagResourceRequest& WithTags(const Aws::Map<Aws::String, Aws::String>& value) { SetTags(value); return *this;}
/**
* <p>The list of key-value pairs to associate with the canary.</p>
*/
inline TagResourceRequest& WithTags(Aws::Map<Aws::String, Aws::String>&& value) { SetTags(std::move(value)); return *this;}
/**
* <p>The list of key-value pairs to associate with the canary.</p>
*/
inline TagResourceRequest& AddTags(const Aws::String& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; }
/**
* <p>The list of key-value pairs to associate with the canary.</p>
*/
inline TagResourceRequest& AddTags(Aws::String&& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; }
/**
* <p>The list of key-value pairs to associate with the canary.</p>
*/
inline TagResourceRequest& AddTags(const Aws::String& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; }
/**
* <p>The list of key-value pairs to associate with the canary.</p>
*/
inline TagResourceRequest& AddTags(Aws::String&& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), std::move(value)); return *this; }
/**
* <p>The list of key-value pairs to associate with the canary.</p>
*/
inline TagResourceRequest& AddTags(const char* key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; }
/**
* <p>The list of key-value pairs to associate with the canary.</p>
*/
inline TagResourceRequest& AddTags(Aws::String&& key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; }
/**
* <p>The list of key-value pairs to associate with the canary.</p>
*/
inline TagResourceRequest& AddTags(const char* key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; }
private:
Aws::String m_resourceArn;
bool m_resourceArnHasBeenSet;
Aws::Map<Aws::String, Aws::String> m_tags;
bool m_tagsHasBeenSet;
};
} // namespace Model
} // namespace Synthetics
} // namespace Aws

View File

@@ -0,0 +1,36 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace Synthetics
{
namespace Model
{
class AWS_SYNTHETICS_API TagResourceResult
{
public:
TagResourceResult();
TagResourceResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
TagResourceResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
};
} // namespace Model
} // namespace Synthetics
} // namespace Aws

View File

@@ -0,0 +1,163 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
#include <aws/synthetics/SyntheticsRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <utility>
namespace Aws
{
namespace Http
{
class URI;
} //namespace Http
namespace Synthetics
{
namespace Model
{
/**
*/
class AWS_SYNTHETICS_API UntagResourceRequest : public SyntheticsRequest
{
public:
UntagResourceRequest();
// 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 "UntagResource"; }
Aws::String SerializePayload() const override;
void AddQueryStringParameters(Aws::Http::URI& uri) const override;
/**
* <p>The ARN of the canary that you're removing tags from.</p> <p>The ARN format
* of a canary is
* <code>arn:aws:synthetics:<i>Region</i>:<i>account-id</i>:canary:<i>canary-name</i>
* </code>.</p>
*/
inline const Aws::String& GetResourceArn() const{ return m_resourceArn; }
/**
* <p>The ARN of the canary that you're removing tags from.</p> <p>The ARN format
* of a canary is
* <code>arn:aws:synthetics:<i>Region</i>:<i>account-id</i>:canary:<i>canary-name</i>
* </code>.</p>
*/
inline bool ResourceArnHasBeenSet() const { return m_resourceArnHasBeenSet; }
/**
* <p>The ARN of the canary that you're removing tags from.</p> <p>The ARN format
* of a canary is
* <code>arn:aws:synthetics:<i>Region</i>:<i>account-id</i>:canary:<i>canary-name</i>
* </code>.</p>
*/
inline void SetResourceArn(const Aws::String& value) { m_resourceArnHasBeenSet = true; m_resourceArn = value; }
/**
* <p>The ARN of the canary that you're removing tags from.</p> <p>The ARN format
* of a canary is
* <code>arn:aws:synthetics:<i>Region</i>:<i>account-id</i>:canary:<i>canary-name</i>
* </code>.</p>
*/
inline void SetResourceArn(Aws::String&& value) { m_resourceArnHasBeenSet = true; m_resourceArn = std::move(value); }
/**
* <p>The ARN of the canary that you're removing tags from.</p> <p>The ARN format
* of a canary is
* <code>arn:aws:synthetics:<i>Region</i>:<i>account-id</i>:canary:<i>canary-name</i>
* </code>.</p>
*/
inline void SetResourceArn(const char* value) { m_resourceArnHasBeenSet = true; m_resourceArn.assign(value); }
/**
* <p>The ARN of the canary that you're removing tags from.</p> <p>The ARN format
* of a canary is
* <code>arn:aws:synthetics:<i>Region</i>:<i>account-id</i>:canary:<i>canary-name</i>
* </code>.</p>
*/
inline UntagResourceRequest& WithResourceArn(const Aws::String& value) { SetResourceArn(value); return *this;}
/**
* <p>The ARN of the canary that you're removing tags from.</p> <p>The ARN format
* of a canary is
* <code>arn:aws:synthetics:<i>Region</i>:<i>account-id</i>:canary:<i>canary-name</i>
* </code>.</p>
*/
inline UntagResourceRequest& WithResourceArn(Aws::String&& value) { SetResourceArn(std::move(value)); return *this;}
/**
* <p>The ARN of the canary that you're removing tags from.</p> <p>The ARN format
* of a canary is
* <code>arn:aws:synthetics:<i>Region</i>:<i>account-id</i>:canary:<i>canary-name</i>
* </code>.</p>
*/
inline UntagResourceRequest& WithResourceArn(const char* value) { SetResourceArn(value); return *this;}
/**
* <p>The list of tag keys to remove from the resource.</p>
*/
inline const Aws::Vector<Aws::String>& GetTagKeys() const{ return m_tagKeys; }
/**
* <p>The list of tag keys to remove from the resource.</p>
*/
inline bool TagKeysHasBeenSet() const { return m_tagKeysHasBeenSet; }
/**
* <p>The list of tag keys to remove from the resource.</p>
*/
inline void SetTagKeys(const Aws::Vector<Aws::String>& value) { m_tagKeysHasBeenSet = true; m_tagKeys = value; }
/**
* <p>The list of tag keys to remove from the resource.</p>
*/
inline void SetTagKeys(Aws::Vector<Aws::String>&& value) { m_tagKeysHasBeenSet = true; m_tagKeys = std::move(value); }
/**
* <p>The list of tag keys to remove from the resource.</p>
*/
inline UntagResourceRequest& WithTagKeys(const Aws::Vector<Aws::String>& value) { SetTagKeys(value); return *this;}
/**
* <p>The list of tag keys to remove from the resource.</p>
*/
inline UntagResourceRequest& WithTagKeys(Aws::Vector<Aws::String>&& value) { SetTagKeys(std::move(value)); return *this;}
/**
* <p>The list of tag keys to remove from the resource.</p>
*/
inline UntagResourceRequest& AddTagKeys(const Aws::String& value) { m_tagKeysHasBeenSet = true; m_tagKeys.push_back(value); return *this; }
/**
* <p>The list of tag keys to remove from the resource.</p>
*/
inline UntagResourceRequest& AddTagKeys(Aws::String&& value) { m_tagKeysHasBeenSet = true; m_tagKeys.push_back(std::move(value)); return *this; }
/**
* <p>The list of tag keys to remove from the resource.</p>
*/
inline UntagResourceRequest& AddTagKeys(const char* value) { m_tagKeysHasBeenSet = true; m_tagKeys.push_back(value); return *this; }
private:
Aws::String m_resourceArn;
bool m_resourceArnHasBeenSet;
Aws::Vector<Aws::String> m_tagKeys;
bool m_tagKeysHasBeenSet;
};
} // namespace Model
} // namespace Synthetics
} // namespace Aws

View File

@@ -0,0 +1,36 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace Synthetics
{
namespace Model
{
class AWS_SYNTHETICS_API UntagResourceResult
{
public:
UntagResourceResult();
UntagResourceResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
UntagResourceResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
};
} // namespace Model
} // namespace Synthetics
} // namespace Aws

View File

@@ -0,0 +1,535 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
#include <aws/synthetics/SyntheticsRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/synthetics/model/CanaryCodeInput.h>
#include <aws/synthetics/model/CanaryScheduleInput.h>
#include <aws/synthetics/model/CanaryRunConfigInput.h>
#include <aws/synthetics/model/VpcConfigInput.h>
#include <utility>
namespace Aws
{
namespace Synthetics
{
namespace Model
{
/**
*/
class AWS_SYNTHETICS_API UpdateCanaryRequest : public SyntheticsRequest
{
public:
UpdateCanaryRequest();
// 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 "UpdateCanary"; }
Aws::String SerializePayload() const override;
/**
* <p>The name of the canary that you want to update. To find the names of your
* canaries, use <a
* href="https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_DescribeCanaries.html">DescribeCanaries</a>.</p>
* <p>You cannot change the name of a canary that has already been created.</p>
*/
inline const Aws::String& GetName() const{ return m_name; }
/**
* <p>The name of the canary that you want to update. To find the names of your
* canaries, use <a
* href="https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_DescribeCanaries.html">DescribeCanaries</a>.</p>
* <p>You cannot change the name of a canary that has already been created.</p>
*/
inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
/**
* <p>The name of the canary that you want to update. To find the names of your
* canaries, use <a
* href="https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_DescribeCanaries.html">DescribeCanaries</a>.</p>
* <p>You cannot change the name of a canary that has already been created.</p>
*/
inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; }
/**
* <p>The name of the canary that you want to update. To find the names of your
* canaries, use <a
* href="https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_DescribeCanaries.html">DescribeCanaries</a>.</p>
* <p>You cannot change the name of a canary that has already been created.</p>
*/
inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); }
/**
* <p>The name of the canary that you want to update. To find the names of your
* canaries, use <a
* href="https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_DescribeCanaries.html">DescribeCanaries</a>.</p>
* <p>You cannot change the name of a canary that has already been created.</p>
*/
inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); }
/**
* <p>The name of the canary that you want to update. To find the names of your
* canaries, use <a
* href="https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_DescribeCanaries.html">DescribeCanaries</a>.</p>
* <p>You cannot change the name of a canary that has already been created.</p>
*/
inline UpdateCanaryRequest& WithName(const Aws::String& value) { SetName(value); return *this;}
/**
* <p>The name of the canary that you want to update. To find the names of your
* canaries, use <a
* href="https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_DescribeCanaries.html">DescribeCanaries</a>.</p>
* <p>You cannot change the name of a canary that has already been created.</p>
*/
inline UpdateCanaryRequest& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;}
/**
* <p>The name of the canary that you want to update. To find the names of your
* canaries, use <a
* href="https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_DescribeCanaries.html">DescribeCanaries</a>.</p>
* <p>You cannot change the name of a canary that has already been created.</p>
*/
inline UpdateCanaryRequest& WithName(const char* value) { SetName(value); return *this;}
/**
* <p>A structure that includes the entry point from which the canary should start
* running your script. If the script is stored in an S3 bucket, the bucket name,
* key, and version are also included. </p>
*/
inline const CanaryCodeInput& GetCode() const{ return m_code; }
/**
* <p>A structure that includes the entry point from which the canary should start
* running your script. If the script is stored in an S3 bucket, the bucket name,
* key, and version are also included. </p>
*/
inline bool CodeHasBeenSet() const { return m_codeHasBeenSet; }
/**
* <p>A structure that includes the entry point from which the canary should start
* running your script. If the script is stored in an S3 bucket, the bucket name,
* key, and version are also included. </p>
*/
inline void SetCode(const CanaryCodeInput& value) { m_codeHasBeenSet = true; m_code = value; }
/**
* <p>A structure that includes the entry point from which the canary should start
* running your script. If the script is stored in an S3 bucket, the bucket name,
* key, and version are also included. </p>
*/
inline void SetCode(CanaryCodeInput&& value) { m_codeHasBeenSet = true; m_code = std::move(value); }
/**
* <p>A structure that includes the entry point from which the canary should start
* running your script. If the script is stored in an S3 bucket, the bucket name,
* key, and version are also included. </p>
*/
inline UpdateCanaryRequest& WithCode(const CanaryCodeInput& value) { SetCode(value); return *this;}
/**
* <p>A structure that includes the entry point from which the canary should start
* running your script. If the script is stored in an S3 bucket, the bucket name,
* key, and version are also included. </p>
*/
inline UpdateCanaryRequest& WithCode(CanaryCodeInput&& value) { SetCode(std::move(value)); return *this;}
/**
* <p>The ARN of the IAM role to be used to run the canary. This role must already
* exist, and must include <code>lambda.amazonaws.com</code> as a principal in the
* trust policy. The role must also have the following permissions:</p> <ul> <li>
* <p> <code>s3:PutObject</code> </p> </li> <li> <p>
* <code>s3:GetBucketLocation</code> </p> </li> <li> <p>
* <code>s3:ListAllMyBuckets</code> </p> </li> <li> <p>
* <code>cloudwatch:PutMetricData</code> </p> </li> <li> <p>
* <code>logs:CreateLogGroup</code> </p> </li> <li> <p>
* <code>logs:CreateLogStream</code> </p> </li> <li> <p>
* <code>logs:CreateLogStream</code> </p> </li> </ul>
*/
inline const Aws::String& GetExecutionRoleArn() const{ return m_executionRoleArn; }
/**
* <p>The ARN of the IAM role to be used to run the canary. This role must already
* exist, and must include <code>lambda.amazonaws.com</code> as a principal in the
* trust policy. The role must also have the following permissions:</p> <ul> <li>
* <p> <code>s3:PutObject</code> </p> </li> <li> <p>
* <code>s3:GetBucketLocation</code> </p> </li> <li> <p>
* <code>s3:ListAllMyBuckets</code> </p> </li> <li> <p>
* <code>cloudwatch:PutMetricData</code> </p> </li> <li> <p>
* <code>logs:CreateLogGroup</code> </p> </li> <li> <p>
* <code>logs:CreateLogStream</code> </p> </li> <li> <p>
* <code>logs:CreateLogStream</code> </p> </li> </ul>
*/
inline bool ExecutionRoleArnHasBeenSet() const { return m_executionRoleArnHasBeenSet; }
/**
* <p>The ARN of the IAM role to be used to run the canary. This role must already
* exist, and must include <code>lambda.amazonaws.com</code> as a principal in the
* trust policy. The role must also have the following permissions:</p> <ul> <li>
* <p> <code>s3:PutObject</code> </p> </li> <li> <p>
* <code>s3:GetBucketLocation</code> </p> </li> <li> <p>
* <code>s3:ListAllMyBuckets</code> </p> </li> <li> <p>
* <code>cloudwatch:PutMetricData</code> </p> </li> <li> <p>
* <code>logs:CreateLogGroup</code> </p> </li> <li> <p>
* <code>logs:CreateLogStream</code> </p> </li> <li> <p>
* <code>logs:CreateLogStream</code> </p> </li> </ul>
*/
inline void SetExecutionRoleArn(const Aws::String& value) { m_executionRoleArnHasBeenSet = true; m_executionRoleArn = value; }
/**
* <p>The ARN of the IAM role to be used to run the canary. This role must already
* exist, and must include <code>lambda.amazonaws.com</code> as a principal in the
* trust policy. The role must also have the following permissions:</p> <ul> <li>
* <p> <code>s3:PutObject</code> </p> </li> <li> <p>
* <code>s3:GetBucketLocation</code> </p> </li> <li> <p>
* <code>s3:ListAllMyBuckets</code> </p> </li> <li> <p>
* <code>cloudwatch:PutMetricData</code> </p> </li> <li> <p>
* <code>logs:CreateLogGroup</code> </p> </li> <li> <p>
* <code>logs:CreateLogStream</code> </p> </li> <li> <p>
* <code>logs:CreateLogStream</code> </p> </li> </ul>
*/
inline void SetExecutionRoleArn(Aws::String&& value) { m_executionRoleArnHasBeenSet = true; m_executionRoleArn = std::move(value); }
/**
* <p>The ARN of the IAM role to be used to run the canary. This role must already
* exist, and must include <code>lambda.amazonaws.com</code> as a principal in the
* trust policy. The role must also have the following permissions:</p> <ul> <li>
* <p> <code>s3:PutObject</code> </p> </li> <li> <p>
* <code>s3:GetBucketLocation</code> </p> </li> <li> <p>
* <code>s3:ListAllMyBuckets</code> </p> </li> <li> <p>
* <code>cloudwatch:PutMetricData</code> </p> </li> <li> <p>
* <code>logs:CreateLogGroup</code> </p> </li> <li> <p>
* <code>logs:CreateLogStream</code> </p> </li> <li> <p>
* <code>logs:CreateLogStream</code> </p> </li> </ul>
*/
inline void SetExecutionRoleArn(const char* value) { m_executionRoleArnHasBeenSet = true; m_executionRoleArn.assign(value); }
/**
* <p>The ARN of the IAM role to be used to run the canary. This role must already
* exist, and must include <code>lambda.amazonaws.com</code> as a principal in the
* trust policy. The role must also have the following permissions:</p> <ul> <li>
* <p> <code>s3:PutObject</code> </p> </li> <li> <p>
* <code>s3:GetBucketLocation</code> </p> </li> <li> <p>
* <code>s3:ListAllMyBuckets</code> </p> </li> <li> <p>
* <code>cloudwatch:PutMetricData</code> </p> </li> <li> <p>
* <code>logs:CreateLogGroup</code> </p> </li> <li> <p>
* <code>logs:CreateLogStream</code> </p> </li> <li> <p>
* <code>logs:CreateLogStream</code> </p> </li> </ul>
*/
inline UpdateCanaryRequest& WithExecutionRoleArn(const Aws::String& value) { SetExecutionRoleArn(value); return *this;}
/**
* <p>The ARN of the IAM role to be used to run the canary. This role must already
* exist, and must include <code>lambda.amazonaws.com</code> as a principal in the
* trust policy. The role must also have the following permissions:</p> <ul> <li>
* <p> <code>s3:PutObject</code> </p> </li> <li> <p>
* <code>s3:GetBucketLocation</code> </p> </li> <li> <p>
* <code>s3:ListAllMyBuckets</code> </p> </li> <li> <p>
* <code>cloudwatch:PutMetricData</code> </p> </li> <li> <p>
* <code>logs:CreateLogGroup</code> </p> </li> <li> <p>
* <code>logs:CreateLogStream</code> </p> </li> <li> <p>
* <code>logs:CreateLogStream</code> </p> </li> </ul>
*/
inline UpdateCanaryRequest& WithExecutionRoleArn(Aws::String&& value) { SetExecutionRoleArn(std::move(value)); return *this;}
/**
* <p>The ARN of the IAM role to be used to run the canary. This role must already
* exist, and must include <code>lambda.amazonaws.com</code> as a principal in the
* trust policy. The role must also have the following permissions:</p> <ul> <li>
* <p> <code>s3:PutObject</code> </p> </li> <li> <p>
* <code>s3:GetBucketLocation</code> </p> </li> <li> <p>
* <code>s3:ListAllMyBuckets</code> </p> </li> <li> <p>
* <code>cloudwatch:PutMetricData</code> </p> </li> <li> <p>
* <code>logs:CreateLogGroup</code> </p> </li> <li> <p>
* <code>logs:CreateLogStream</code> </p> </li> <li> <p>
* <code>logs:CreateLogStream</code> </p> </li> </ul>
*/
inline UpdateCanaryRequest& WithExecutionRoleArn(const char* value) { SetExecutionRoleArn(value); return *this;}
/**
* <p>Specifies the runtime version to use for the canary. Currently, the only
* valid value is <code>syn-1.0</code>. For more information about runtime
* versions, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_Library.html">
* Canary Runtime Versions</a>.</p>
*/
inline const Aws::String& GetRuntimeVersion() const{ return m_runtimeVersion; }
/**
* <p>Specifies the runtime version to use for the canary. Currently, the only
* valid value is <code>syn-1.0</code>. For more information about runtime
* versions, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_Library.html">
* Canary Runtime Versions</a>.</p>
*/
inline bool RuntimeVersionHasBeenSet() const { return m_runtimeVersionHasBeenSet; }
/**
* <p>Specifies the runtime version to use for the canary. Currently, the only
* valid value is <code>syn-1.0</code>. For more information about runtime
* versions, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_Library.html">
* Canary Runtime Versions</a>.</p>
*/
inline void SetRuntimeVersion(const Aws::String& value) { m_runtimeVersionHasBeenSet = true; m_runtimeVersion = value; }
/**
* <p>Specifies the runtime version to use for the canary. Currently, the only
* valid value is <code>syn-1.0</code>. For more information about runtime
* versions, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_Library.html">
* Canary Runtime Versions</a>.</p>
*/
inline void SetRuntimeVersion(Aws::String&& value) { m_runtimeVersionHasBeenSet = true; m_runtimeVersion = std::move(value); }
/**
* <p>Specifies the runtime version to use for the canary. Currently, the only
* valid value is <code>syn-1.0</code>. For more information about runtime
* versions, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_Library.html">
* Canary Runtime Versions</a>.</p>
*/
inline void SetRuntimeVersion(const char* value) { m_runtimeVersionHasBeenSet = true; m_runtimeVersion.assign(value); }
/**
* <p>Specifies the runtime version to use for the canary. Currently, the only
* valid value is <code>syn-1.0</code>. For more information about runtime
* versions, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_Library.html">
* Canary Runtime Versions</a>.</p>
*/
inline UpdateCanaryRequest& WithRuntimeVersion(const Aws::String& value) { SetRuntimeVersion(value); return *this;}
/**
* <p>Specifies the runtime version to use for the canary. Currently, the only
* valid value is <code>syn-1.0</code>. For more information about runtime
* versions, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_Library.html">
* Canary Runtime Versions</a>.</p>
*/
inline UpdateCanaryRequest& WithRuntimeVersion(Aws::String&& value) { SetRuntimeVersion(std::move(value)); return *this;}
/**
* <p>Specifies the runtime version to use for the canary. Currently, the only
* valid value is <code>syn-1.0</code>. For more information about runtime
* versions, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_Library.html">
* Canary Runtime Versions</a>.</p>
*/
inline UpdateCanaryRequest& WithRuntimeVersion(const char* value) { SetRuntimeVersion(value); return *this;}
/**
* <p>A structure that contains information about how often the canary is to run,
* and when these runs are to stop.</p>
*/
inline const CanaryScheduleInput& GetSchedule() const{ return m_schedule; }
/**
* <p>A structure that contains information about how often the canary is to run,
* and when these runs are to stop.</p>
*/
inline bool ScheduleHasBeenSet() const { return m_scheduleHasBeenSet; }
/**
* <p>A structure that contains information about how often the canary is to run,
* and when these runs are to stop.</p>
*/
inline void SetSchedule(const CanaryScheduleInput& value) { m_scheduleHasBeenSet = true; m_schedule = value; }
/**
* <p>A structure that contains information about how often the canary is to run,
* and when these runs are to stop.</p>
*/
inline void SetSchedule(CanaryScheduleInput&& value) { m_scheduleHasBeenSet = true; m_schedule = std::move(value); }
/**
* <p>A structure that contains information about how often the canary is to run,
* and when these runs are to stop.</p>
*/
inline UpdateCanaryRequest& WithSchedule(const CanaryScheduleInput& value) { SetSchedule(value); return *this;}
/**
* <p>A structure that contains information about how often the canary is to run,
* and when these runs are to stop.</p>
*/
inline UpdateCanaryRequest& WithSchedule(CanaryScheduleInput&& value) { SetSchedule(std::move(value)); return *this;}
/**
* <p>A structure that contains the timeout value that is used for each individual
* run of the canary.</p>
*/
inline const CanaryRunConfigInput& GetRunConfig() const{ return m_runConfig; }
/**
* <p>A structure that contains the timeout value that is used for each individual
* run of the canary.</p>
*/
inline bool RunConfigHasBeenSet() const { return m_runConfigHasBeenSet; }
/**
* <p>A structure that contains the timeout value that is used for each individual
* run of the canary.</p>
*/
inline void SetRunConfig(const CanaryRunConfigInput& value) { m_runConfigHasBeenSet = true; m_runConfig = value; }
/**
* <p>A structure that contains the timeout value that is used for each individual
* run of the canary.</p>
*/
inline void SetRunConfig(CanaryRunConfigInput&& value) { m_runConfigHasBeenSet = true; m_runConfig = std::move(value); }
/**
* <p>A structure that contains the timeout value that is used for each individual
* run of the canary.</p>
*/
inline UpdateCanaryRequest& WithRunConfig(const CanaryRunConfigInput& value) { SetRunConfig(value); return *this;}
/**
* <p>A structure that contains the timeout value that is used for each individual
* run of the canary.</p>
*/
inline UpdateCanaryRequest& WithRunConfig(CanaryRunConfigInput&& value) { SetRunConfig(std::move(value)); return *this;}
/**
* <p>The number of days to retain data about successful runs of this canary.</p>
*/
inline int GetSuccessRetentionPeriodInDays() const{ return m_successRetentionPeriodInDays; }
/**
* <p>The number of days to retain data about successful runs of this canary.</p>
*/
inline bool SuccessRetentionPeriodInDaysHasBeenSet() const { return m_successRetentionPeriodInDaysHasBeenSet; }
/**
* <p>The number of days to retain data about successful runs of this canary.</p>
*/
inline void SetSuccessRetentionPeriodInDays(int value) { m_successRetentionPeriodInDaysHasBeenSet = true; m_successRetentionPeriodInDays = value; }
/**
* <p>The number of days to retain data about successful runs of this canary.</p>
*/
inline UpdateCanaryRequest& WithSuccessRetentionPeriodInDays(int value) { SetSuccessRetentionPeriodInDays(value); return *this;}
/**
* <p>The number of days to retain data about failed runs of this canary.</p>
*/
inline int GetFailureRetentionPeriodInDays() const{ return m_failureRetentionPeriodInDays; }
/**
* <p>The number of days to retain data about failed runs of this canary.</p>
*/
inline bool FailureRetentionPeriodInDaysHasBeenSet() const { return m_failureRetentionPeriodInDaysHasBeenSet; }
/**
* <p>The number of days to retain data about failed runs of this canary.</p>
*/
inline void SetFailureRetentionPeriodInDays(int value) { m_failureRetentionPeriodInDaysHasBeenSet = true; m_failureRetentionPeriodInDays = value; }
/**
* <p>The number of days to retain data about failed runs of this canary.</p>
*/
inline UpdateCanaryRequest& WithFailureRetentionPeriodInDays(int value) { SetFailureRetentionPeriodInDays(value); return *this;}
/**
* <p>If this canary is to test an endpoint in a VPC, this structure contains
* information about the subnet and security groups of the VPC endpoint. For more
* information, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_VPC.html">
* Running a Canary in a VPC</a>.</p>
*/
inline const VpcConfigInput& GetVpcConfig() const{ return m_vpcConfig; }
/**
* <p>If this canary is to test an endpoint in a VPC, this structure contains
* information about the subnet and security groups of the VPC endpoint. For more
* information, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_VPC.html">
* Running a Canary in a VPC</a>.</p>
*/
inline bool VpcConfigHasBeenSet() const { return m_vpcConfigHasBeenSet; }
/**
* <p>If this canary is to test an endpoint in a VPC, this structure contains
* information about the subnet and security groups of the VPC endpoint. For more
* information, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_VPC.html">
* Running a Canary in a VPC</a>.</p>
*/
inline void SetVpcConfig(const VpcConfigInput& value) { m_vpcConfigHasBeenSet = true; m_vpcConfig = value; }
/**
* <p>If this canary is to test an endpoint in a VPC, this structure contains
* information about the subnet and security groups of the VPC endpoint. For more
* information, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_VPC.html">
* Running a Canary in a VPC</a>.</p>
*/
inline void SetVpcConfig(VpcConfigInput&& value) { m_vpcConfigHasBeenSet = true; m_vpcConfig = std::move(value); }
/**
* <p>If this canary is to test an endpoint in a VPC, this structure contains
* information about the subnet and security groups of the VPC endpoint. For more
* information, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_VPC.html">
* Running a Canary in a VPC</a>.</p>
*/
inline UpdateCanaryRequest& WithVpcConfig(const VpcConfigInput& value) { SetVpcConfig(value); return *this;}
/**
* <p>If this canary is to test an endpoint in a VPC, this structure contains
* information about the subnet and security groups of the VPC endpoint. For more
* information, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_VPC.html">
* Running a Canary in a VPC</a>.</p>
*/
inline UpdateCanaryRequest& WithVpcConfig(VpcConfigInput&& value) { SetVpcConfig(std::move(value)); return *this;}
private:
Aws::String m_name;
bool m_nameHasBeenSet;
CanaryCodeInput m_code;
bool m_codeHasBeenSet;
Aws::String m_executionRoleArn;
bool m_executionRoleArnHasBeenSet;
Aws::String m_runtimeVersion;
bool m_runtimeVersionHasBeenSet;
CanaryScheduleInput m_schedule;
bool m_scheduleHasBeenSet;
CanaryRunConfigInput m_runConfig;
bool m_runConfigHasBeenSet;
int m_successRetentionPeriodInDays;
bool m_successRetentionPeriodInDaysHasBeenSet;
int m_failureRetentionPeriodInDays;
bool m_failureRetentionPeriodInDaysHasBeenSet;
VpcConfigInput m_vpcConfig;
bool m_vpcConfigHasBeenSet;
};
} // namespace Model
} // namespace Synthetics
} // namespace Aws

View File

@@ -0,0 +1,36 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace Synthetics
{
namespace Model
{
class AWS_SYNTHETICS_API UpdateCanaryResult
{
public:
UpdateCanaryResult();
UpdateCanaryResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
UpdateCanaryResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
};
} // namespace Model
} // namespace Synthetics
} // namespace Aws

View File

@@ -0,0 +1,147 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace Synthetics
{
namespace Model
{
/**
* <p>If this canary is to test an endpoint in a VPC, this structure contains
* information about the subnets and security groups of the VPC endpoint. For more
* information, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_VPC.html">
* Running a Canary in a VPC</a>.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/VpcConfigInput">AWS
* API Reference</a></p>
*/
class AWS_SYNTHETICS_API VpcConfigInput
{
public:
VpcConfigInput();
VpcConfigInput(Aws::Utils::Json::JsonView jsonValue);
VpcConfigInput& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>The IDs of the subnets where this canary is to run.</p>
*/
inline const Aws::Vector<Aws::String>& GetSubnetIds() const{ return m_subnetIds; }
/**
* <p>The IDs of the subnets where this canary is to run.</p>
*/
inline bool SubnetIdsHasBeenSet() const { return m_subnetIdsHasBeenSet; }
/**
* <p>The IDs of the subnets where this canary is to run.</p>
*/
inline void SetSubnetIds(const Aws::Vector<Aws::String>& value) { m_subnetIdsHasBeenSet = true; m_subnetIds = value; }
/**
* <p>The IDs of the subnets where this canary is to run.</p>
*/
inline void SetSubnetIds(Aws::Vector<Aws::String>&& value) { m_subnetIdsHasBeenSet = true; m_subnetIds = std::move(value); }
/**
* <p>The IDs of the subnets where this canary is to run.</p>
*/
inline VpcConfigInput& WithSubnetIds(const Aws::Vector<Aws::String>& value) { SetSubnetIds(value); return *this;}
/**
* <p>The IDs of the subnets where this canary is to run.</p>
*/
inline VpcConfigInput& WithSubnetIds(Aws::Vector<Aws::String>&& value) { SetSubnetIds(std::move(value)); return *this;}
/**
* <p>The IDs of the subnets where this canary is to run.</p>
*/
inline VpcConfigInput& AddSubnetIds(const Aws::String& value) { m_subnetIdsHasBeenSet = true; m_subnetIds.push_back(value); return *this; }
/**
* <p>The IDs of the subnets where this canary is to run.</p>
*/
inline VpcConfigInput& AddSubnetIds(Aws::String&& value) { m_subnetIdsHasBeenSet = true; m_subnetIds.push_back(std::move(value)); return *this; }
/**
* <p>The IDs of the subnets where this canary is to run.</p>
*/
inline VpcConfigInput& AddSubnetIds(const char* value) { m_subnetIdsHasBeenSet = true; m_subnetIds.push_back(value); return *this; }
/**
* <p>The IDs of the security groups for this canary.</p>
*/
inline const Aws::Vector<Aws::String>& GetSecurityGroupIds() const{ return m_securityGroupIds; }
/**
* <p>The IDs of the security groups for this canary.</p>
*/
inline bool SecurityGroupIdsHasBeenSet() const { return m_securityGroupIdsHasBeenSet; }
/**
* <p>The IDs of the security groups for this canary.</p>
*/
inline void SetSecurityGroupIds(const Aws::Vector<Aws::String>& value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds = value; }
/**
* <p>The IDs of the security groups for this canary.</p>
*/
inline void SetSecurityGroupIds(Aws::Vector<Aws::String>&& value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds = std::move(value); }
/**
* <p>The IDs of the security groups for this canary.</p>
*/
inline VpcConfigInput& WithSecurityGroupIds(const Aws::Vector<Aws::String>& value) { SetSecurityGroupIds(value); return *this;}
/**
* <p>The IDs of the security groups for this canary.</p>
*/
inline VpcConfigInput& WithSecurityGroupIds(Aws::Vector<Aws::String>&& value) { SetSecurityGroupIds(std::move(value)); return *this;}
/**
* <p>The IDs of the security groups for this canary.</p>
*/
inline VpcConfigInput& AddSecurityGroupIds(const Aws::String& value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds.push_back(value); return *this; }
/**
* <p>The IDs of the security groups for this canary.</p>
*/
inline VpcConfigInput& AddSecurityGroupIds(Aws::String&& value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds.push_back(std::move(value)); return *this; }
/**
* <p>The IDs of the security groups for this canary.</p>
*/
inline VpcConfigInput& AddSecurityGroupIds(const char* value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds.push_back(value); return *this; }
private:
Aws::Vector<Aws::String> m_subnetIds;
bool m_subnetIdsHasBeenSet;
Aws::Vector<Aws::String> m_securityGroupIds;
bool m_securityGroupIdsHasBeenSet;
};
} // namespace Model
} // namespace Synthetics
} // namespace Aws

View File

@@ -0,0 +1,191 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/synthetics/Synthetics_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace Synthetics
{
namespace Model
{
/**
* <p>If this canary is to test an endpoint in a VPC, this structure contains
* information about the subnets and security groups of the VPC endpoint. For more
* information, see <a
* href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_VPC.html">
* Running a Canary in a VPC</a>.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/VpcConfigOutput">AWS
* API Reference</a></p>
*/
class AWS_SYNTHETICS_API VpcConfigOutput
{
public:
VpcConfigOutput();
VpcConfigOutput(Aws::Utils::Json::JsonView jsonValue);
VpcConfigOutput& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>The IDs of the VPC where this canary is to run.</p>
*/
inline const Aws::String& GetVpcId() const{ return m_vpcId; }
/**
* <p>The IDs of the VPC where this canary is to run.</p>
*/
inline bool VpcIdHasBeenSet() const { return m_vpcIdHasBeenSet; }
/**
* <p>The IDs of the VPC where this canary is to run.</p>
*/
inline void SetVpcId(const Aws::String& value) { m_vpcIdHasBeenSet = true; m_vpcId = value; }
/**
* <p>The IDs of the VPC where this canary is to run.</p>
*/
inline void SetVpcId(Aws::String&& value) { m_vpcIdHasBeenSet = true; m_vpcId = std::move(value); }
/**
* <p>The IDs of the VPC where this canary is to run.</p>
*/
inline void SetVpcId(const char* value) { m_vpcIdHasBeenSet = true; m_vpcId.assign(value); }
/**
* <p>The IDs of the VPC where this canary is to run.</p>
*/
inline VpcConfigOutput& WithVpcId(const Aws::String& value) { SetVpcId(value); return *this;}
/**
* <p>The IDs of the VPC where this canary is to run.</p>
*/
inline VpcConfigOutput& WithVpcId(Aws::String&& value) { SetVpcId(std::move(value)); return *this;}
/**
* <p>The IDs of the VPC where this canary is to run.</p>
*/
inline VpcConfigOutput& WithVpcId(const char* value) { SetVpcId(value); return *this;}
/**
* <p>The IDs of the subnets where this canary is to run.</p>
*/
inline const Aws::Vector<Aws::String>& GetSubnetIds() const{ return m_subnetIds; }
/**
* <p>The IDs of the subnets where this canary is to run.</p>
*/
inline bool SubnetIdsHasBeenSet() const { return m_subnetIdsHasBeenSet; }
/**
* <p>The IDs of the subnets where this canary is to run.</p>
*/
inline void SetSubnetIds(const Aws::Vector<Aws::String>& value) { m_subnetIdsHasBeenSet = true; m_subnetIds = value; }
/**
* <p>The IDs of the subnets where this canary is to run.</p>
*/
inline void SetSubnetIds(Aws::Vector<Aws::String>&& value) { m_subnetIdsHasBeenSet = true; m_subnetIds = std::move(value); }
/**
* <p>The IDs of the subnets where this canary is to run.</p>
*/
inline VpcConfigOutput& WithSubnetIds(const Aws::Vector<Aws::String>& value) { SetSubnetIds(value); return *this;}
/**
* <p>The IDs of the subnets where this canary is to run.</p>
*/
inline VpcConfigOutput& WithSubnetIds(Aws::Vector<Aws::String>&& value) { SetSubnetIds(std::move(value)); return *this;}
/**
* <p>The IDs of the subnets where this canary is to run.</p>
*/
inline VpcConfigOutput& AddSubnetIds(const Aws::String& value) { m_subnetIdsHasBeenSet = true; m_subnetIds.push_back(value); return *this; }
/**
* <p>The IDs of the subnets where this canary is to run.</p>
*/
inline VpcConfigOutput& AddSubnetIds(Aws::String&& value) { m_subnetIdsHasBeenSet = true; m_subnetIds.push_back(std::move(value)); return *this; }
/**
* <p>The IDs of the subnets where this canary is to run.</p>
*/
inline VpcConfigOutput& AddSubnetIds(const char* value) { m_subnetIdsHasBeenSet = true; m_subnetIds.push_back(value); return *this; }
/**
* <p>The IDs of the security groups for this canary.</p>
*/
inline const Aws::Vector<Aws::String>& GetSecurityGroupIds() const{ return m_securityGroupIds; }
/**
* <p>The IDs of the security groups for this canary.</p>
*/
inline bool SecurityGroupIdsHasBeenSet() const { return m_securityGroupIdsHasBeenSet; }
/**
* <p>The IDs of the security groups for this canary.</p>
*/
inline void SetSecurityGroupIds(const Aws::Vector<Aws::String>& value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds = value; }
/**
* <p>The IDs of the security groups for this canary.</p>
*/
inline void SetSecurityGroupIds(Aws::Vector<Aws::String>&& value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds = std::move(value); }
/**
* <p>The IDs of the security groups for this canary.</p>
*/
inline VpcConfigOutput& WithSecurityGroupIds(const Aws::Vector<Aws::String>& value) { SetSecurityGroupIds(value); return *this;}
/**
* <p>The IDs of the security groups for this canary.</p>
*/
inline VpcConfigOutput& WithSecurityGroupIds(Aws::Vector<Aws::String>&& value) { SetSecurityGroupIds(std::move(value)); return *this;}
/**
* <p>The IDs of the security groups for this canary.</p>
*/
inline VpcConfigOutput& AddSecurityGroupIds(const Aws::String& value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds.push_back(value); return *this; }
/**
* <p>The IDs of the security groups for this canary.</p>
*/
inline VpcConfigOutput& AddSecurityGroupIds(Aws::String&& value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds.push_back(std::move(value)); return *this; }
/**
* <p>The IDs of the security groups for this canary.</p>
*/
inline VpcConfigOutput& AddSecurityGroupIds(const char* value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds.push_back(value); return *this; }
private:
Aws::String m_vpcId;
bool m_vpcIdHasBeenSet;
Aws::Vector<Aws::String> m_subnetIds;
bool m_subnetIdsHasBeenSet;
Aws::Vector<Aws::String> m_securityGroupIds;
bool m_securityGroupIdsHasBeenSet;
};
} // namespace Model
} // namespace Synthetics
} // namespace Aws