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,611 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/serverlessrepo/ServerlessApplicationRepository_EXPORTS.h>
#include <aws/serverlessrepo/ServerlessApplicationRepositoryErrors.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/serverlessrepo/model/CreateApplicationResult.h>
#include <aws/serverlessrepo/model/CreateApplicationVersionResult.h>
#include <aws/serverlessrepo/model/CreateCloudFormationChangeSetResult.h>
#include <aws/serverlessrepo/model/CreateCloudFormationTemplateResult.h>
#include <aws/serverlessrepo/model/GetApplicationResult.h>
#include <aws/serverlessrepo/model/GetApplicationPolicyResult.h>
#include <aws/serverlessrepo/model/GetCloudFormationTemplateResult.h>
#include <aws/serverlessrepo/model/ListApplicationDependenciesResult.h>
#include <aws/serverlessrepo/model/ListApplicationVersionsResult.h>
#include <aws/serverlessrepo/model/ListApplicationsResult.h>
#include <aws/serverlessrepo/model/PutApplicationPolicyResult.h>
#include <aws/serverlessrepo/model/UpdateApplicationResult.h>
#include <aws/core/NoResult.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 ServerlessApplicationRepository
{
namespace Model
{
class CreateApplicationRequest;
class CreateApplicationVersionRequest;
class CreateCloudFormationChangeSetRequest;
class CreateCloudFormationTemplateRequest;
class DeleteApplicationRequest;
class GetApplicationRequest;
class GetApplicationPolicyRequest;
class GetCloudFormationTemplateRequest;
class ListApplicationDependenciesRequest;
class ListApplicationVersionsRequest;
class ListApplicationsRequest;
class PutApplicationPolicyRequest;
class UnshareApplicationRequest;
class UpdateApplicationRequest;
typedef Aws::Utils::Outcome<CreateApplicationResult, ServerlessApplicationRepositoryError> CreateApplicationOutcome;
typedef Aws::Utils::Outcome<CreateApplicationVersionResult, ServerlessApplicationRepositoryError> CreateApplicationVersionOutcome;
typedef Aws::Utils::Outcome<CreateCloudFormationChangeSetResult, ServerlessApplicationRepositoryError> CreateCloudFormationChangeSetOutcome;
typedef Aws::Utils::Outcome<CreateCloudFormationTemplateResult, ServerlessApplicationRepositoryError> CreateCloudFormationTemplateOutcome;
typedef Aws::Utils::Outcome<Aws::NoResult, ServerlessApplicationRepositoryError> DeleteApplicationOutcome;
typedef Aws::Utils::Outcome<GetApplicationResult, ServerlessApplicationRepositoryError> GetApplicationOutcome;
typedef Aws::Utils::Outcome<GetApplicationPolicyResult, ServerlessApplicationRepositoryError> GetApplicationPolicyOutcome;
typedef Aws::Utils::Outcome<GetCloudFormationTemplateResult, ServerlessApplicationRepositoryError> GetCloudFormationTemplateOutcome;
typedef Aws::Utils::Outcome<ListApplicationDependenciesResult, ServerlessApplicationRepositoryError> ListApplicationDependenciesOutcome;
typedef Aws::Utils::Outcome<ListApplicationVersionsResult, ServerlessApplicationRepositoryError> ListApplicationVersionsOutcome;
typedef Aws::Utils::Outcome<ListApplicationsResult, ServerlessApplicationRepositoryError> ListApplicationsOutcome;
typedef Aws::Utils::Outcome<PutApplicationPolicyResult, ServerlessApplicationRepositoryError> PutApplicationPolicyOutcome;
typedef Aws::Utils::Outcome<Aws::NoResult, ServerlessApplicationRepositoryError> UnshareApplicationOutcome;
typedef Aws::Utils::Outcome<UpdateApplicationResult, ServerlessApplicationRepositoryError> UpdateApplicationOutcome;
typedef std::future<CreateApplicationOutcome> CreateApplicationOutcomeCallable;
typedef std::future<CreateApplicationVersionOutcome> CreateApplicationVersionOutcomeCallable;
typedef std::future<CreateCloudFormationChangeSetOutcome> CreateCloudFormationChangeSetOutcomeCallable;
typedef std::future<CreateCloudFormationTemplateOutcome> CreateCloudFormationTemplateOutcomeCallable;
typedef std::future<DeleteApplicationOutcome> DeleteApplicationOutcomeCallable;
typedef std::future<GetApplicationOutcome> GetApplicationOutcomeCallable;
typedef std::future<GetApplicationPolicyOutcome> GetApplicationPolicyOutcomeCallable;
typedef std::future<GetCloudFormationTemplateOutcome> GetCloudFormationTemplateOutcomeCallable;
typedef std::future<ListApplicationDependenciesOutcome> ListApplicationDependenciesOutcomeCallable;
typedef std::future<ListApplicationVersionsOutcome> ListApplicationVersionsOutcomeCallable;
typedef std::future<ListApplicationsOutcome> ListApplicationsOutcomeCallable;
typedef std::future<PutApplicationPolicyOutcome> PutApplicationPolicyOutcomeCallable;
typedef std::future<UnshareApplicationOutcome> UnshareApplicationOutcomeCallable;
typedef std::future<UpdateApplicationOutcome> UpdateApplicationOutcomeCallable;
} // namespace Model
class ServerlessApplicationRepositoryClient;
typedef std::function<void(const ServerlessApplicationRepositoryClient*, const Model::CreateApplicationRequest&, const Model::CreateApplicationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > CreateApplicationResponseReceivedHandler;
typedef std::function<void(const ServerlessApplicationRepositoryClient*, const Model::CreateApplicationVersionRequest&, const Model::CreateApplicationVersionOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > CreateApplicationVersionResponseReceivedHandler;
typedef std::function<void(const ServerlessApplicationRepositoryClient*, const Model::CreateCloudFormationChangeSetRequest&, const Model::CreateCloudFormationChangeSetOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > CreateCloudFormationChangeSetResponseReceivedHandler;
typedef std::function<void(const ServerlessApplicationRepositoryClient*, const Model::CreateCloudFormationTemplateRequest&, const Model::CreateCloudFormationTemplateOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > CreateCloudFormationTemplateResponseReceivedHandler;
typedef std::function<void(const ServerlessApplicationRepositoryClient*, const Model::DeleteApplicationRequest&, const Model::DeleteApplicationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeleteApplicationResponseReceivedHandler;
typedef std::function<void(const ServerlessApplicationRepositoryClient*, const Model::GetApplicationRequest&, const Model::GetApplicationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetApplicationResponseReceivedHandler;
typedef std::function<void(const ServerlessApplicationRepositoryClient*, const Model::GetApplicationPolicyRequest&, const Model::GetApplicationPolicyOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetApplicationPolicyResponseReceivedHandler;
typedef std::function<void(const ServerlessApplicationRepositoryClient*, const Model::GetCloudFormationTemplateRequest&, const Model::GetCloudFormationTemplateOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetCloudFormationTemplateResponseReceivedHandler;
typedef std::function<void(const ServerlessApplicationRepositoryClient*, const Model::ListApplicationDependenciesRequest&, const Model::ListApplicationDependenciesOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListApplicationDependenciesResponseReceivedHandler;
typedef std::function<void(const ServerlessApplicationRepositoryClient*, const Model::ListApplicationVersionsRequest&, const Model::ListApplicationVersionsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListApplicationVersionsResponseReceivedHandler;
typedef std::function<void(const ServerlessApplicationRepositoryClient*, const Model::ListApplicationsRequest&, const Model::ListApplicationsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListApplicationsResponseReceivedHandler;
typedef std::function<void(const ServerlessApplicationRepositoryClient*, const Model::PutApplicationPolicyRequest&, const Model::PutApplicationPolicyOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutApplicationPolicyResponseReceivedHandler;
typedef std::function<void(const ServerlessApplicationRepositoryClient*, const Model::UnshareApplicationRequest&, const Model::UnshareApplicationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > UnshareApplicationResponseReceivedHandler;
typedef std::function<void(const ServerlessApplicationRepositoryClient*, const Model::UpdateApplicationRequest&, const Model::UpdateApplicationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > UpdateApplicationResponseReceivedHandler;
/**
* <p>The AWS Serverless Application Repository makes it easy for developers and
* enterprises to quickly find
and deploy serverless applications in the AWS
* Cloud. For more information about serverless applications,
see Serverless
* Computing and Applications on the AWS website.</p><p>The AWS Serverless
* Application Repository is deeply integrated with the AWS Lambda console, so that
* developers of
all levels can get started with serverless computing without
* needing to learn anything new. You can use category
keywords to browse for
* applications such as web and mobile backends, data processing applications, or
* chatbots.
You can also search for applications by name, publisher, or event
* source. To use an application, you simply choose it,
configure any required
* fields, and deploy it with a few clicks. </p><p>You can also easily publish
* applications, sharing them publicly with the community at large, or privately
* within your team or across your organization. To publish a serverless
* application (or app), you can use the
AWS Management Console, AWS Command Line
* Interface (AWS CLI), or AWS SDKs to upload the code. Along with the
code, you
* upload a simple manifest file, also known as the AWS Serverless Application
* Model (AWS SAM) template.
For more information about AWS SAM, see AWS
* Serverless Application Model (AWS SAM) on the AWS Labs
GitHub
* repository.</p><p>The AWS Serverless Application Repository Developer Guide
* contains more information about the two developer
experiences
* available:</p><ul>
<li>
<p>Consuming Applications Browse for applications
* and view information about them, including
source code and readme files. Also
* install, configure, and deploy applications of your choosing. </p>
* <p>Publishing Applications Configure and upload applications to make them
* available to other
developers, and publish new versions of applications. </p>
* </li>
</ul>
*/
class AWS_SERVERLESSAPPLICATIONREPOSITORY_API ServerlessApplicationRepositoryClient : 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.
*/
ServerlessApplicationRepositoryClient(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.
*/
ServerlessApplicationRepositoryClient(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
*/
ServerlessApplicationRepositoryClient(const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
const Aws::Client::ClientConfiguration& clientConfiguration = Aws::Client::ClientConfiguration());
virtual ~ServerlessApplicationRepositoryClient();
/**
* <p>Creates an application, optionally including an AWS SAM file to create the
* first application version in the same call.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/CreateApplication">AWS
* API Reference</a></p>
*/
virtual Model::CreateApplicationOutcome CreateApplication(const Model::CreateApplicationRequest& request) const;
/**
* <p>Creates an application, optionally including an AWS SAM file to create the
* first application version in the same call.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/CreateApplication">AWS
* API Reference</a></p>
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::CreateApplicationOutcomeCallable CreateApplicationCallable(const Model::CreateApplicationRequest& request) const;
/**
* <p>Creates an application, optionally including an AWS SAM file to create the
* first application version in the same call.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/CreateApplication">AWS
* API Reference</a></p>
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void CreateApplicationAsync(const Model::CreateApplicationRequest& request, const CreateApplicationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
/**
* <p>Creates an application version.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/CreateApplicationVersion">AWS
* API Reference</a></p>
*/
virtual Model::CreateApplicationVersionOutcome CreateApplicationVersion(const Model::CreateApplicationVersionRequest& request) const;
/**
* <p>Creates an application version.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/CreateApplicationVersion">AWS
* API Reference</a></p>
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::CreateApplicationVersionOutcomeCallable CreateApplicationVersionCallable(const Model::CreateApplicationVersionRequest& request) const;
/**
* <p>Creates an application version.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/CreateApplicationVersion">AWS
* API Reference</a></p>
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void CreateApplicationVersionAsync(const Model::CreateApplicationVersionRequest& request, const CreateApplicationVersionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
/**
* <p>Creates an AWS CloudFormation change set for the given
* application.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/CreateCloudFormationChangeSet">AWS
* API Reference</a></p>
*/
virtual Model::CreateCloudFormationChangeSetOutcome CreateCloudFormationChangeSet(const Model::CreateCloudFormationChangeSetRequest& request) const;
/**
* <p>Creates an AWS CloudFormation change set for the given
* application.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/CreateCloudFormationChangeSet">AWS
* API Reference</a></p>
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::CreateCloudFormationChangeSetOutcomeCallable CreateCloudFormationChangeSetCallable(const Model::CreateCloudFormationChangeSetRequest& request) const;
/**
* <p>Creates an AWS CloudFormation change set for the given
* application.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/CreateCloudFormationChangeSet">AWS
* API Reference</a></p>
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void CreateCloudFormationChangeSetAsync(const Model::CreateCloudFormationChangeSetRequest& request, const CreateCloudFormationChangeSetResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
/**
* <p>Creates an AWS CloudFormation template.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/CreateCloudFormationTemplate">AWS
* API Reference</a></p>
*/
virtual Model::CreateCloudFormationTemplateOutcome CreateCloudFormationTemplate(const Model::CreateCloudFormationTemplateRequest& request) const;
/**
* <p>Creates an AWS CloudFormation template.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/CreateCloudFormationTemplate">AWS
* API Reference</a></p>
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::CreateCloudFormationTemplateOutcomeCallable CreateCloudFormationTemplateCallable(const Model::CreateCloudFormationTemplateRequest& request) const;
/**
* <p>Creates an AWS CloudFormation template.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/CreateCloudFormationTemplate">AWS
* API Reference</a></p>
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void CreateCloudFormationTemplateAsync(const Model::CreateCloudFormationTemplateRequest& request, const CreateCloudFormationTemplateResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
/**
* <p>Deletes the specified application.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/DeleteApplication">AWS
* API Reference</a></p>
*/
virtual Model::DeleteApplicationOutcome DeleteApplication(const Model::DeleteApplicationRequest& request) const;
/**
* <p>Deletes the specified application.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/DeleteApplication">AWS
* API Reference</a></p>
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::DeleteApplicationOutcomeCallable DeleteApplicationCallable(const Model::DeleteApplicationRequest& request) const;
/**
* <p>Deletes the specified application.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/DeleteApplication">AWS
* API Reference</a></p>
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void DeleteApplicationAsync(const Model::DeleteApplicationRequest& request, const DeleteApplicationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
/**
* <p>Gets the specified application.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/GetApplication">AWS
* API Reference</a></p>
*/
virtual Model::GetApplicationOutcome GetApplication(const Model::GetApplicationRequest& request) const;
/**
* <p>Gets the specified application.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/GetApplication">AWS
* API Reference</a></p>
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::GetApplicationOutcomeCallable GetApplicationCallable(const Model::GetApplicationRequest& request) const;
/**
* <p>Gets the specified application.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/GetApplication">AWS
* API Reference</a></p>
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void GetApplicationAsync(const Model::GetApplicationRequest& request, const GetApplicationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
/**
* <p>Retrieves the policy for the application.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/GetApplicationPolicy">AWS
* API Reference</a></p>
*/
virtual Model::GetApplicationPolicyOutcome GetApplicationPolicy(const Model::GetApplicationPolicyRequest& request) const;
/**
* <p>Retrieves the policy for the application.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/GetApplicationPolicy">AWS
* API Reference</a></p>
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::GetApplicationPolicyOutcomeCallable GetApplicationPolicyCallable(const Model::GetApplicationPolicyRequest& request) const;
/**
* <p>Retrieves the policy for the application.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/GetApplicationPolicy">AWS
* API Reference</a></p>
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void GetApplicationPolicyAsync(const Model::GetApplicationPolicyRequest& request, const GetApplicationPolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
/**
* <p>Gets the specified AWS CloudFormation template.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/GetCloudFormationTemplate">AWS
* API Reference</a></p>
*/
virtual Model::GetCloudFormationTemplateOutcome GetCloudFormationTemplate(const Model::GetCloudFormationTemplateRequest& request) const;
/**
* <p>Gets the specified AWS CloudFormation template.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/GetCloudFormationTemplate">AWS
* API Reference</a></p>
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::GetCloudFormationTemplateOutcomeCallable GetCloudFormationTemplateCallable(const Model::GetCloudFormationTemplateRequest& request) const;
/**
* <p>Gets the specified AWS CloudFormation template.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/GetCloudFormationTemplate">AWS
* API Reference</a></p>
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void GetCloudFormationTemplateAsync(const Model::GetCloudFormationTemplateRequest& request, const GetCloudFormationTemplateResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
/**
* <p>Retrieves the list of applications nested in the containing
* application.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/ListApplicationDependencies">AWS
* API Reference</a></p>
*/
virtual Model::ListApplicationDependenciesOutcome ListApplicationDependencies(const Model::ListApplicationDependenciesRequest& request) const;
/**
* <p>Retrieves the list of applications nested in the containing
* application.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/ListApplicationDependencies">AWS
* API Reference</a></p>
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::ListApplicationDependenciesOutcomeCallable ListApplicationDependenciesCallable(const Model::ListApplicationDependenciesRequest& request) const;
/**
* <p>Retrieves the list of applications nested in the containing
* application.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/ListApplicationDependencies">AWS
* API Reference</a></p>
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void ListApplicationDependenciesAsync(const Model::ListApplicationDependenciesRequest& request, const ListApplicationDependenciesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
/**
* <p>Lists versions for the specified application.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/ListApplicationVersions">AWS
* API Reference</a></p>
*/
virtual Model::ListApplicationVersionsOutcome ListApplicationVersions(const Model::ListApplicationVersionsRequest& request) const;
/**
* <p>Lists versions for the specified application.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/ListApplicationVersions">AWS
* API Reference</a></p>
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::ListApplicationVersionsOutcomeCallable ListApplicationVersionsCallable(const Model::ListApplicationVersionsRequest& request) const;
/**
* <p>Lists versions for the specified application.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/ListApplicationVersions">AWS
* API Reference</a></p>
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void ListApplicationVersionsAsync(const Model::ListApplicationVersionsRequest& request, const ListApplicationVersionsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
/**
* <p>Lists applications owned by the requester.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/ListApplications">AWS
* API Reference</a></p>
*/
virtual Model::ListApplicationsOutcome ListApplications(const Model::ListApplicationsRequest& request) const;
/**
* <p>Lists applications owned by the requester.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/ListApplications">AWS
* API Reference</a></p>
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::ListApplicationsOutcomeCallable ListApplicationsCallable(const Model::ListApplicationsRequest& request) const;
/**
* <p>Lists applications owned by the requester.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/ListApplications">AWS
* API Reference</a></p>
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void ListApplicationsAsync(const Model::ListApplicationsRequest& request, const ListApplicationsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
/**
* <p>Sets the permission policy for an application. For the list of actions
* supported for this operation, see
<a
* href="https://docs.aws.amazon.com/serverlessrepo/latest/devguide/access-control-resource-based.html#application-permissions">Application
*
Permissions</a>
.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/PutApplicationPolicy">AWS
* API Reference</a></p>
*/
virtual Model::PutApplicationPolicyOutcome PutApplicationPolicy(const Model::PutApplicationPolicyRequest& request) const;
/**
* <p>Sets the permission policy for an application. For the list of actions
* supported for this operation, see
<a
* href="https://docs.aws.amazon.com/serverlessrepo/latest/devguide/access-control-resource-based.html#application-permissions">Application
*
Permissions</a>
.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/PutApplicationPolicy">AWS
* API Reference</a></p>
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::PutApplicationPolicyOutcomeCallable PutApplicationPolicyCallable(const Model::PutApplicationPolicyRequest& request) const;
/**
* <p>Sets the permission policy for an application. For the list of actions
* supported for this operation, see
<a
* href="https://docs.aws.amazon.com/serverlessrepo/latest/devguide/access-control-resource-based.html#application-permissions">Application
*
Permissions</a>
.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/PutApplicationPolicy">AWS
* API Reference</a></p>
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void PutApplicationPolicyAsync(const Model::PutApplicationPolicyRequest& request, const PutApplicationPolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
/**
* <p>Unshares an application from an AWS Organization.</p><p>This operation can be
* called only from the organization's master account.</p><p><h3>See Also:</h3>
* <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/UnshareApplication">AWS
* API Reference</a></p>
*/
virtual Model::UnshareApplicationOutcome UnshareApplication(const Model::UnshareApplicationRequest& request) const;
/**
* <p>Unshares an application from an AWS Organization.</p><p>This operation can be
* called only from the organization's master account.</p><p><h3>See Also:</h3>
* <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/UnshareApplication">AWS
* API Reference</a></p>
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::UnshareApplicationOutcomeCallable UnshareApplicationCallable(const Model::UnshareApplicationRequest& request) const;
/**
* <p>Unshares an application from an AWS Organization.</p><p>This operation can be
* called only from the organization's master account.</p><p><h3>See Also:</h3>
* <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/UnshareApplication">AWS
* API Reference</a></p>
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void UnshareApplicationAsync(const Model::UnshareApplicationRequest& request, const UnshareApplicationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
/**
* <p>Updates the specified application.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/UpdateApplication">AWS
* API Reference</a></p>
*/
virtual Model::UpdateApplicationOutcome UpdateApplication(const Model::UpdateApplicationRequest& request) const;
/**
* <p>Updates the specified application.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/UpdateApplication">AWS
* API Reference</a></p>
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::UpdateApplicationOutcomeCallable UpdateApplicationCallable(const Model::UpdateApplicationRequest& request) const;
/**
* <p>Updates the specified application.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/UpdateApplication">AWS
* API Reference</a></p>
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void UpdateApplicationAsync(const Model::UpdateApplicationRequest& request, const UpdateApplicationResponseReceivedHandler& 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 CreateApplicationAsyncHelper(const Model::CreateApplicationRequest& request, const CreateApplicationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
void CreateApplicationVersionAsyncHelper(const Model::CreateApplicationVersionRequest& request, const CreateApplicationVersionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
void CreateCloudFormationChangeSetAsyncHelper(const Model::CreateCloudFormationChangeSetRequest& request, const CreateCloudFormationChangeSetResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
void CreateCloudFormationTemplateAsyncHelper(const Model::CreateCloudFormationTemplateRequest& request, const CreateCloudFormationTemplateResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
void DeleteApplicationAsyncHelper(const Model::DeleteApplicationRequest& request, const DeleteApplicationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
void GetApplicationAsyncHelper(const Model::GetApplicationRequest& request, const GetApplicationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
void GetApplicationPolicyAsyncHelper(const Model::GetApplicationPolicyRequest& request, const GetApplicationPolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
void GetCloudFormationTemplateAsyncHelper(const Model::GetCloudFormationTemplateRequest& request, const GetCloudFormationTemplateResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
void ListApplicationDependenciesAsyncHelper(const Model::ListApplicationDependenciesRequest& request, const ListApplicationDependenciesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
void ListApplicationVersionsAsyncHelper(const Model::ListApplicationVersionsRequest& request, const ListApplicationVersionsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
void ListApplicationsAsyncHelper(const Model::ListApplicationsRequest& request, const ListApplicationsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
void PutApplicationPolicyAsyncHelper(const Model::PutApplicationPolicyRequest& request, const PutApplicationPolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
void UnshareApplicationAsyncHelper(const Model::UnshareApplicationRequest& request, const UnshareApplicationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
void UpdateApplicationAsyncHelper(const Model::UpdateApplicationRequest& request, const UpdateApplicationResponseReceivedHandler& 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 ServerlessApplicationRepository
} // 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/serverlessrepo/ServerlessApplicationRepository_EXPORTS.h>
#include <aws/core/Region.h>
#include <aws/core/utils/memory/stl/AWSString.h>
namespace Aws
{
namespace ServerlessApplicationRepository
{
namespace ServerlessApplicationRepositoryEndpoint
{
AWS_SERVERLESSAPPLICATIONREPOSITORY_API Aws::String ForRegion(const Aws::String& regionName, bool useDualStack = false);
} // namespace ServerlessApplicationRepositoryEndpoint
} // namespace ServerlessApplicationRepository
} // 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/serverlessrepo/ServerlessApplicationRepository_EXPORTS.h>
#include <aws/core/client/AWSErrorMarshaller.h>
namespace Aws
{
namespace Client
{
class AWS_SERVERLESSAPPLICATIONREPOSITORY_API ServerlessApplicationRepositoryErrorMarshaller : 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,77 @@
/**
* 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/serverlessrepo/ServerlessApplicationRepository_EXPORTS.h>
namespace Aws
{
namespace ServerlessApplicationRepository
{
enum class ServerlessApplicationRepositoryErrors
{
//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,
///////////////////////////////////////////////////////////////////////////////////////////
BAD_REQUEST= static_cast<int>(Aws::Client::CoreErrors::SERVICE_EXTENSION_START_RANGE) + 1,
CONFLICT,
FORBIDDEN,
INTERNAL_SERVER_ERROR,
NOT_FOUND,
TOO_MANY_REQUESTS
};
class AWS_SERVERLESSAPPLICATIONREPOSITORY_API ServerlessApplicationRepositoryError : public Aws::Client::AWSError<ServerlessApplicationRepositoryErrors>
{
public:
ServerlessApplicationRepositoryError() {}
ServerlessApplicationRepositoryError(const Aws::Client::AWSError<Aws::Client::CoreErrors>& rhs) : Aws::Client::AWSError<ServerlessApplicationRepositoryErrors>(rhs) {}
ServerlessApplicationRepositoryError(Aws::Client::AWSError<Aws::Client::CoreErrors>&& rhs) : Aws::Client::AWSError<ServerlessApplicationRepositoryErrors>(rhs) {}
ServerlessApplicationRepositoryError(const Aws::Client::AWSError<ServerlessApplicationRepositoryErrors>& rhs) : Aws::Client::AWSError<ServerlessApplicationRepositoryErrors>(rhs) {}
ServerlessApplicationRepositoryError(Aws::Client::AWSError<ServerlessApplicationRepositoryErrors>&& rhs) : Aws::Client::AWSError<ServerlessApplicationRepositoryErrors>(rhs) {}
template <typename T>
T GetModeledError();
};
namespace ServerlessApplicationRepositoryErrorMapper
{
AWS_SERVERLESSAPPLICATIONREPOSITORY_API Aws::Client::AWSError<Aws::Client::CoreErrors> GetErrorForName(const char* errorName);
}
} // namespace ServerlessApplicationRepository
} // 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/serverlessrepo/ServerlessApplicationRepository_EXPORTS.h>
#include <aws/core/AmazonSerializableWebServiceRequest.h>
#include <aws/core/utils/UnreferencedParam.h>
#include <aws/core/http/HttpRequest.h>
namespace Aws
{
namespace ServerlessApplicationRepository
{
class AWS_SERVERLESSAPPLICATIONREPOSITORY_API ServerlessApplicationRepositoryRequest : public Aws::AmazonSerializableWebServiceRequest
{
public:
virtual ~ServerlessApplicationRepositoryRequest () {}
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-09-08"));
return headers;
}
protected:
virtual Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const { return Aws::Http::HeaderValueCollection(); }
};
} // namespace ServerlessApplicationRepository
} // 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_SERVERLESSAPPLICATIONREPOSITORY_EXPORTS
#define AWS_SERVERLESSAPPLICATIONREPOSITORY_API __declspec(dllexport)
#else
#define AWS_SERVERLESSAPPLICATIONREPOSITORY_API __declspec(dllimport)
#endif /* AWS_SERVERLESSAPPLICATIONREPOSITORY_EXPORTS */
#else
#define AWS_SERVERLESSAPPLICATIONREPOSITORY_API
#endif // USE_IMPORT_EXPORT
#else // defined (USE_WINDOWS_DLL_SEMANTICS) || defined (WIN32)
#define AWS_SERVERLESSAPPLICATIONREPOSITORY_API
#endif // defined (USE_WINDOWS_DLL_SEMANTICS) || defined (WIN32)

View File

@@ -0,0 +1,132 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/serverlessrepo/ServerlessApplicationRepository_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 ServerlessApplicationRepository
{
namespace Model
{
/**
* <p>A nested application summary.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/ApplicationDependencySummary">AWS
* API Reference</a></p>
*/
class AWS_SERVERLESSAPPLICATIONREPOSITORY_API ApplicationDependencySummary
{
public:
ApplicationDependencySummary();
ApplicationDependencySummary(Aws::Utils::Json::JsonView jsonValue);
ApplicationDependencySummary& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>The Amazon Resource Name (ARN) of the nested application.</p>
*/
inline const Aws::String& GetApplicationId() const{ return m_applicationId; }
/**
* <p>The Amazon Resource Name (ARN) of the nested application.</p>
*/
inline bool ApplicationIdHasBeenSet() const { return m_applicationIdHasBeenSet; }
/**
* <p>The Amazon Resource Name (ARN) of the nested application.</p>
*/
inline void SetApplicationId(const Aws::String& value) { m_applicationIdHasBeenSet = true; m_applicationId = value; }
/**
* <p>The Amazon Resource Name (ARN) of the nested application.</p>
*/
inline void SetApplicationId(Aws::String&& value) { m_applicationIdHasBeenSet = true; m_applicationId = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the nested application.</p>
*/
inline void SetApplicationId(const char* value) { m_applicationIdHasBeenSet = true; m_applicationId.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the nested application.</p>
*/
inline ApplicationDependencySummary& WithApplicationId(const Aws::String& value) { SetApplicationId(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the nested application.</p>
*/
inline ApplicationDependencySummary& WithApplicationId(Aws::String&& value) { SetApplicationId(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the nested application.</p>
*/
inline ApplicationDependencySummary& WithApplicationId(const char* value) { SetApplicationId(value); return *this;}
/**
* <p>The semantic version of the nested application.</p>
*/
inline const Aws::String& GetSemanticVersion() const{ return m_semanticVersion; }
/**
* <p>The semantic version of the nested application.</p>
*/
inline bool SemanticVersionHasBeenSet() const { return m_semanticVersionHasBeenSet; }
/**
* <p>The semantic version of the nested application.</p>
*/
inline void SetSemanticVersion(const Aws::String& value) { m_semanticVersionHasBeenSet = true; m_semanticVersion = value; }
/**
* <p>The semantic version of the nested application.</p>
*/
inline void SetSemanticVersion(Aws::String&& value) { m_semanticVersionHasBeenSet = true; m_semanticVersion = std::move(value); }
/**
* <p>The semantic version of the nested application.</p>
*/
inline void SetSemanticVersion(const char* value) { m_semanticVersionHasBeenSet = true; m_semanticVersion.assign(value); }
/**
* <p>The semantic version of the nested application.</p>
*/
inline ApplicationDependencySummary& WithSemanticVersion(const Aws::String& value) { SetSemanticVersion(value); return *this;}
/**
* <p>The semantic version of the nested application.</p>
*/
inline ApplicationDependencySummary& WithSemanticVersion(Aws::String&& value) { SetSemanticVersion(std::move(value)); return *this;}
/**
* <p>The semantic version of the nested application.</p>
*/
inline ApplicationDependencySummary& WithSemanticVersion(const char* value) { SetSemanticVersion(value); return *this;}
private:
Aws::String m_applicationId;
bool m_applicationIdHasBeenSet;
Aws::String m_semanticVersion;
bool m_semanticVersionHasBeenSet;
};
} // namespace Model
} // namespace ServerlessApplicationRepository
} // namespace Aws

View File

@@ -0,0 +1,281 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/serverlessrepo/ServerlessApplicationRepository_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 ServerlessApplicationRepository
{
namespace Model
{
/**
* <p>Policy statement applied to the application.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/ApplicationPolicyStatement">AWS
* API Reference</a></p>
*/
class AWS_SERVERLESSAPPLICATIONREPOSITORY_API ApplicationPolicyStatement
{
public:
ApplicationPolicyStatement();
ApplicationPolicyStatement(Aws::Utils::Json::JsonView jsonValue);
ApplicationPolicyStatement& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>For the list of actions supported for this operation, see <a
* href="https://docs.aws.amazon.com/serverlessrepo/latest/devguide/access-control-resource-based.html#application-permissions">Application
*
Permissions</a>.</p>
*/
inline const Aws::Vector<Aws::String>& GetActions() const{ return m_actions; }
/**
* <p>For the list of actions supported for this operation, see <a
* href="https://docs.aws.amazon.com/serverlessrepo/latest/devguide/access-control-resource-based.html#application-permissions">Application
*
Permissions</a>.</p>
*/
inline bool ActionsHasBeenSet() const { return m_actionsHasBeenSet; }
/**
* <p>For the list of actions supported for this operation, see <a
* href="https://docs.aws.amazon.com/serverlessrepo/latest/devguide/access-control-resource-based.html#application-permissions">Application
*
Permissions</a>.</p>
*/
inline void SetActions(const Aws::Vector<Aws::String>& value) { m_actionsHasBeenSet = true; m_actions = value; }
/**
* <p>For the list of actions supported for this operation, see <a
* href="https://docs.aws.amazon.com/serverlessrepo/latest/devguide/access-control-resource-based.html#application-permissions">Application
*
Permissions</a>.</p>
*/
inline void SetActions(Aws::Vector<Aws::String>&& value) { m_actionsHasBeenSet = true; m_actions = std::move(value); }
/**
* <p>For the list of actions supported for this operation, see <a
* href="https://docs.aws.amazon.com/serverlessrepo/latest/devguide/access-control-resource-based.html#application-permissions">Application
*
Permissions</a>.</p>
*/
inline ApplicationPolicyStatement& WithActions(const Aws::Vector<Aws::String>& value) { SetActions(value); return *this;}
/**
* <p>For the list of actions supported for this operation, see <a
* href="https://docs.aws.amazon.com/serverlessrepo/latest/devguide/access-control-resource-based.html#application-permissions">Application
*
Permissions</a>.</p>
*/
inline ApplicationPolicyStatement& WithActions(Aws::Vector<Aws::String>&& value) { SetActions(std::move(value)); return *this;}
/**
* <p>For the list of actions supported for this operation, see <a
* href="https://docs.aws.amazon.com/serverlessrepo/latest/devguide/access-control-resource-based.html#application-permissions">Application
*
Permissions</a>.</p>
*/
inline ApplicationPolicyStatement& AddActions(const Aws::String& value) { m_actionsHasBeenSet = true; m_actions.push_back(value); return *this; }
/**
* <p>For the list of actions supported for this operation, see <a
* href="https://docs.aws.amazon.com/serverlessrepo/latest/devguide/access-control-resource-based.html#application-permissions">Application
*
Permissions</a>.</p>
*/
inline ApplicationPolicyStatement& AddActions(Aws::String&& value) { m_actionsHasBeenSet = true; m_actions.push_back(std::move(value)); return *this; }
/**
* <p>For the list of actions supported for this operation, see <a
* href="https://docs.aws.amazon.com/serverlessrepo/latest/devguide/access-control-resource-based.html#application-permissions">Application
*
Permissions</a>.</p>
*/
inline ApplicationPolicyStatement& AddActions(const char* value) { m_actionsHasBeenSet = true; m_actions.push_back(value); return *this; }
/**
* <p>An array of PrinciplalOrgIDs, which corresponds to AWS IAM <a
* href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#principal-org-id">aws:PrincipalOrgID</a>
* global condition key.</p>
*/
inline const Aws::Vector<Aws::String>& GetPrincipalOrgIDs() const{ return m_principalOrgIDs; }
/**
* <p>An array of PrinciplalOrgIDs, which corresponds to AWS IAM <a
* href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#principal-org-id">aws:PrincipalOrgID</a>
* global condition key.</p>
*/
inline bool PrincipalOrgIDsHasBeenSet() const { return m_principalOrgIDsHasBeenSet; }
/**
* <p>An array of PrinciplalOrgIDs, which corresponds to AWS IAM <a
* href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#principal-org-id">aws:PrincipalOrgID</a>
* global condition key.</p>
*/
inline void SetPrincipalOrgIDs(const Aws::Vector<Aws::String>& value) { m_principalOrgIDsHasBeenSet = true; m_principalOrgIDs = value; }
/**
* <p>An array of PrinciplalOrgIDs, which corresponds to AWS IAM <a
* href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#principal-org-id">aws:PrincipalOrgID</a>
* global condition key.</p>
*/
inline void SetPrincipalOrgIDs(Aws::Vector<Aws::String>&& value) { m_principalOrgIDsHasBeenSet = true; m_principalOrgIDs = std::move(value); }
/**
* <p>An array of PrinciplalOrgIDs, which corresponds to AWS IAM <a
* href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#principal-org-id">aws:PrincipalOrgID</a>
* global condition key.</p>
*/
inline ApplicationPolicyStatement& WithPrincipalOrgIDs(const Aws::Vector<Aws::String>& value) { SetPrincipalOrgIDs(value); return *this;}
/**
* <p>An array of PrinciplalOrgIDs, which corresponds to AWS IAM <a
* href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#principal-org-id">aws:PrincipalOrgID</a>
* global condition key.</p>
*/
inline ApplicationPolicyStatement& WithPrincipalOrgIDs(Aws::Vector<Aws::String>&& value) { SetPrincipalOrgIDs(std::move(value)); return *this;}
/**
* <p>An array of PrinciplalOrgIDs, which corresponds to AWS IAM <a
* href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#principal-org-id">aws:PrincipalOrgID</a>
* global condition key.</p>
*/
inline ApplicationPolicyStatement& AddPrincipalOrgIDs(const Aws::String& value) { m_principalOrgIDsHasBeenSet = true; m_principalOrgIDs.push_back(value); return *this; }
/**
* <p>An array of PrinciplalOrgIDs, which corresponds to AWS IAM <a
* href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#principal-org-id">aws:PrincipalOrgID</a>
* global condition key.</p>
*/
inline ApplicationPolicyStatement& AddPrincipalOrgIDs(Aws::String&& value) { m_principalOrgIDsHasBeenSet = true; m_principalOrgIDs.push_back(std::move(value)); return *this; }
/**
* <p>An array of PrinciplalOrgIDs, which corresponds to AWS IAM <a
* href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#principal-org-id">aws:PrincipalOrgID</a>
* global condition key.</p>
*/
inline ApplicationPolicyStatement& AddPrincipalOrgIDs(const char* value) { m_principalOrgIDsHasBeenSet = true; m_principalOrgIDs.push_back(value); return *this; }
/**
* <p>An array of AWS account IDs, or * to make the application public.</p>
*/
inline const Aws::Vector<Aws::String>& GetPrincipals() const{ return m_principals; }
/**
* <p>An array of AWS account IDs, or * to make the application public.</p>
*/
inline bool PrincipalsHasBeenSet() const { return m_principalsHasBeenSet; }
/**
* <p>An array of AWS account IDs, or * to make the application public.</p>
*/
inline void SetPrincipals(const Aws::Vector<Aws::String>& value) { m_principalsHasBeenSet = true; m_principals = value; }
/**
* <p>An array of AWS account IDs, or * to make the application public.</p>
*/
inline void SetPrincipals(Aws::Vector<Aws::String>&& value) { m_principalsHasBeenSet = true; m_principals = std::move(value); }
/**
* <p>An array of AWS account IDs, or * to make the application public.</p>
*/
inline ApplicationPolicyStatement& WithPrincipals(const Aws::Vector<Aws::String>& value) { SetPrincipals(value); return *this;}
/**
* <p>An array of AWS account IDs, or * to make the application public.</p>
*/
inline ApplicationPolicyStatement& WithPrincipals(Aws::Vector<Aws::String>&& value) { SetPrincipals(std::move(value)); return *this;}
/**
* <p>An array of AWS account IDs, or * to make the application public.</p>
*/
inline ApplicationPolicyStatement& AddPrincipals(const Aws::String& value) { m_principalsHasBeenSet = true; m_principals.push_back(value); return *this; }
/**
* <p>An array of AWS account IDs, or * to make the application public.</p>
*/
inline ApplicationPolicyStatement& AddPrincipals(Aws::String&& value) { m_principalsHasBeenSet = true; m_principals.push_back(std::move(value)); return *this; }
/**
* <p>An array of AWS account IDs, or * to make the application public.</p>
*/
inline ApplicationPolicyStatement& AddPrincipals(const char* value) { m_principalsHasBeenSet = true; m_principals.push_back(value); return *this; }
/**
* <p>A unique ID for the statement.</p>
*/
inline const Aws::String& GetStatementId() const{ return m_statementId; }
/**
* <p>A unique ID for the statement.</p>
*/
inline bool StatementIdHasBeenSet() const { return m_statementIdHasBeenSet; }
/**
* <p>A unique ID for the statement.</p>
*/
inline void SetStatementId(const Aws::String& value) { m_statementIdHasBeenSet = true; m_statementId = value; }
/**
* <p>A unique ID for the statement.</p>
*/
inline void SetStatementId(Aws::String&& value) { m_statementIdHasBeenSet = true; m_statementId = std::move(value); }
/**
* <p>A unique ID for the statement.</p>
*/
inline void SetStatementId(const char* value) { m_statementIdHasBeenSet = true; m_statementId.assign(value); }
/**
* <p>A unique ID for the statement.</p>
*/
inline ApplicationPolicyStatement& WithStatementId(const Aws::String& value) { SetStatementId(value); return *this;}
/**
* <p>A unique ID for the statement.</p>
*/
inline ApplicationPolicyStatement& WithStatementId(Aws::String&& value) { SetStatementId(std::move(value)); return *this;}
/**
* <p>A unique ID for the statement.</p>
*/
inline ApplicationPolicyStatement& WithStatementId(const char* value) { SetStatementId(value); return *this;}
private:
Aws::Vector<Aws::String> m_actions;
bool m_actionsHasBeenSet;
Aws::Vector<Aws::String> m_principalOrgIDs;
bool m_principalOrgIDsHasBeenSet;
Aws::Vector<Aws::String> m_principals;
bool m_principalsHasBeenSet;
Aws::String m_statementId;
bool m_statementIdHasBeenSet;
};
} // namespace Model
} // namespace ServerlessApplicationRepository
} // namespace Aws

View File

@@ -0,0 +1,460 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/serverlessrepo/ServerlessApplicationRepository_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 ServerlessApplicationRepository
{
namespace Model
{
/**
* <p>Summary of details about the application.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/ApplicationSummary">AWS
* API Reference</a></p>
*/
class AWS_SERVERLESSAPPLICATIONREPOSITORY_API ApplicationSummary
{
public:
ApplicationSummary();
ApplicationSummary(Aws::Utils::Json::JsonView jsonValue);
ApplicationSummary& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline const Aws::String& GetApplicationId() const{ return m_applicationId; }
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline bool ApplicationIdHasBeenSet() const { return m_applicationIdHasBeenSet; }
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline void SetApplicationId(const Aws::String& value) { m_applicationIdHasBeenSet = true; m_applicationId = value; }
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline void SetApplicationId(Aws::String&& value) { m_applicationIdHasBeenSet = true; m_applicationId = std::move(value); }
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline void SetApplicationId(const char* value) { m_applicationIdHasBeenSet = true; m_applicationId.assign(value); }
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline ApplicationSummary& WithApplicationId(const Aws::String& value) { SetApplicationId(value); return *this;}
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline ApplicationSummary& WithApplicationId(Aws::String&& value) { SetApplicationId(std::move(value)); return *this;}
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline ApplicationSummary& WithApplicationId(const char* value) { SetApplicationId(value); return *this;}
/**
* <p>The name of the author publishing the app.</p><p>Minimum length=1. Maximum
* length=127.</p><p>Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";</p>
*/
inline const Aws::String& GetAuthor() const{ return m_author; }
/**
* <p>The name of the author publishing the app.</p><p>Minimum length=1. Maximum
* length=127.</p><p>Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";</p>
*/
inline bool AuthorHasBeenSet() const { return m_authorHasBeenSet; }
/**
* <p>The name of the author publishing the app.</p><p>Minimum length=1. Maximum
* length=127.</p><p>Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";</p>
*/
inline void SetAuthor(const Aws::String& value) { m_authorHasBeenSet = true; m_author = value; }
/**
* <p>The name of the author publishing the app.</p><p>Minimum length=1. Maximum
* length=127.</p><p>Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";</p>
*/
inline void SetAuthor(Aws::String&& value) { m_authorHasBeenSet = true; m_author = std::move(value); }
/**
* <p>The name of the author publishing the app.</p><p>Minimum length=1. Maximum
* length=127.</p><p>Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";</p>
*/
inline void SetAuthor(const char* value) { m_authorHasBeenSet = true; m_author.assign(value); }
/**
* <p>The name of the author publishing the app.</p><p>Minimum length=1. Maximum
* length=127.</p><p>Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";</p>
*/
inline ApplicationSummary& WithAuthor(const Aws::String& value) { SetAuthor(value); return *this;}
/**
* <p>The name of the author publishing the app.</p><p>Minimum length=1. Maximum
* length=127.</p><p>Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";</p>
*/
inline ApplicationSummary& WithAuthor(Aws::String&& value) { SetAuthor(std::move(value)); return *this;}
/**
* <p>The name of the author publishing the app.</p><p>Minimum length=1. Maximum
* length=127.</p><p>Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";</p>
*/
inline ApplicationSummary& WithAuthor(const char* value) { SetAuthor(value); return *this;}
/**
* <p>The date and time this resource was created.</p>
*/
inline const Aws::String& GetCreationTime() const{ return m_creationTime; }
/**
* <p>The date and time this resource was created.</p>
*/
inline bool CreationTimeHasBeenSet() const { return m_creationTimeHasBeenSet; }
/**
* <p>The date and time this resource was created.</p>
*/
inline void SetCreationTime(const Aws::String& value) { m_creationTimeHasBeenSet = true; m_creationTime = value; }
/**
* <p>The date and time this resource was created.</p>
*/
inline void SetCreationTime(Aws::String&& value) { m_creationTimeHasBeenSet = true; m_creationTime = std::move(value); }
/**
* <p>The date and time this resource was created.</p>
*/
inline void SetCreationTime(const char* value) { m_creationTimeHasBeenSet = true; m_creationTime.assign(value); }
/**
* <p>The date and time this resource was created.</p>
*/
inline ApplicationSummary& WithCreationTime(const Aws::String& value) { SetCreationTime(value); return *this;}
/**
* <p>The date and time this resource was created.</p>
*/
inline ApplicationSummary& WithCreationTime(Aws::String&& value) { SetCreationTime(std::move(value)); return *this;}
/**
* <p>The date and time this resource was created.</p>
*/
inline ApplicationSummary& WithCreationTime(const char* value) { SetCreationTime(value); return *this;}
/**
* <p>The description of the application.</p><p>Minimum length=1. Maximum
* length=256</p>
*/
inline const Aws::String& GetDescription() const{ return m_description; }
/**
* <p>The description of the application.</p><p>Minimum length=1. Maximum
* length=256</p>
*/
inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
/**
* <p>The description of the application.</p><p>Minimum length=1. Maximum
* length=256</p>
*/
inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; }
/**
* <p>The description of the application.</p><p>Minimum length=1. Maximum
* length=256</p>
*/
inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); }
/**
* <p>The description of the application.</p><p>Minimum length=1. Maximum
* length=256</p>
*/
inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); }
/**
* <p>The description of the application.</p><p>Minimum length=1. Maximum
* length=256</p>
*/
inline ApplicationSummary& WithDescription(const Aws::String& value) { SetDescription(value); return *this;}
/**
* <p>The description of the application.</p><p>Minimum length=1. Maximum
* length=256</p>
*/
inline ApplicationSummary& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;}
/**
* <p>The description of the application.</p><p>Minimum length=1. Maximum
* length=256</p>
*/
inline ApplicationSummary& WithDescription(const char* value) { SetDescription(value); return *this;}
/**
* <p>A URL with more information about the application, for example the location
* of your GitHub repository for the application.</p>
*/
inline const Aws::String& GetHomePageUrl() const{ return m_homePageUrl; }
/**
* <p>A URL with more information about the application, for example the location
* of your GitHub repository for the application.</p>
*/
inline bool HomePageUrlHasBeenSet() const { return m_homePageUrlHasBeenSet; }
/**
* <p>A URL with more information about the application, for example the location
* of your GitHub repository for the application.</p>
*/
inline void SetHomePageUrl(const Aws::String& value) { m_homePageUrlHasBeenSet = true; m_homePageUrl = value; }
/**
* <p>A URL with more information about the application, for example the location
* of your GitHub repository for the application.</p>
*/
inline void SetHomePageUrl(Aws::String&& value) { m_homePageUrlHasBeenSet = true; m_homePageUrl = std::move(value); }
/**
* <p>A URL with more information about the application, for example the location
* of your GitHub repository for the application.</p>
*/
inline void SetHomePageUrl(const char* value) { m_homePageUrlHasBeenSet = true; m_homePageUrl.assign(value); }
/**
* <p>A URL with more information about the application, for example the location
* of your GitHub repository for the application.</p>
*/
inline ApplicationSummary& WithHomePageUrl(const Aws::String& value) { SetHomePageUrl(value); return *this;}
/**
* <p>A URL with more information about the application, for example the location
* of your GitHub repository for the application.</p>
*/
inline ApplicationSummary& WithHomePageUrl(Aws::String&& value) { SetHomePageUrl(std::move(value)); return *this;}
/**
* <p>A URL with more information about the application, for example the location
* of your GitHub repository for the application.</p>
*/
inline ApplicationSummary& WithHomePageUrl(const char* value) { SetHomePageUrl(value); return *this;}
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline const Aws::Vector<Aws::String>& GetLabels() const{ return m_labels; }
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline bool LabelsHasBeenSet() const { return m_labelsHasBeenSet; }
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline void SetLabels(const Aws::Vector<Aws::String>& value) { m_labelsHasBeenSet = true; m_labels = value; }
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline void SetLabels(Aws::Vector<Aws::String>&& value) { m_labelsHasBeenSet = true; m_labels = std::move(value); }
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline ApplicationSummary& WithLabels(const Aws::Vector<Aws::String>& value) { SetLabels(value); return *this;}
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline ApplicationSummary& WithLabels(Aws::Vector<Aws::String>&& value) { SetLabels(std::move(value)); return *this;}
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline ApplicationSummary& AddLabels(const Aws::String& value) { m_labelsHasBeenSet = true; m_labels.push_back(value); return *this; }
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline ApplicationSummary& AddLabels(Aws::String&& value) { m_labelsHasBeenSet = true; m_labels.push_back(std::move(value)); return *this; }
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline ApplicationSummary& AddLabels(const char* value) { m_labelsHasBeenSet = true; m_labels.push_back(value); return *this; }
/**
* <p>The name of the application.</p><p>Minimum length=1. Maximum
* length=140</p><p>Pattern: "[a-zA-Z0-9\\-]+";</p>
*/
inline const Aws::String& GetName() const{ return m_name; }
/**
* <p>The name of the application.</p><p>Minimum length=1. Maximum
* length=140</p><p>Pattern: "[a-zA-Z0-9\\-]+";</p>
*/
inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
/**
* <p>The name of the application.</p><p>Minimum length=1. Maximum
* length=140</p><p>Pattern: "[a-zA-Z0-9\\-]+";</p>
*/
inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; }
/**
* <p>The name of the application.</p><p>Minimum length=1. Maximum
* length=140</p><p>Pattern: "[a-zA-Z0-9\\-]+";</p>
*/
inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); }
/**
* <p>The name of the application.</p><p>Minimum length=1. Maximum
* length=140</p><p>Pattern: "[a-zA-Z0-9\\-]+";</p>
*/
inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); }
/**
* <p>The name of the application.</p><p>Minimum length=1. Maximum
* length=140</p><p>Pattern: "[a-zA-Z0-9\\-]+";</p>
*/
inline ApplicationSummary& WithName(const Aws::String& value) { SetName(value); return *this;}
/**
* <p>The name of the application.</p><p>Minimum length=1. Maximum
* length=140</p><p>Pattern: "[a-zA-Z0-9\\-]+";</p>
*/
inline ApplicationSummary& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;}
/**
* <p>The name of the application.</p><p>Minimum length=1. Maximum
* length=140</p><p>Pattern: "[a-zA-Z0-9\\-]+";</p>
*/
inline ApplicationSummary& WithName(const char* value) { SetName(value); return *this;}
/**
* <p>A valid identifier from <a
* href="https://spdx.org/licenses/">https://spdx.org/licenses/</a>.</p>
*/
inline const Aws::String& GetSpdxLicenseId() const{ return m_spdxLicenseId; }
/**
* <p>A valid identifier from <a
* href="https://spdx.org/licenses/">https://spdx.org/licenses/</a>.</p>
*/
inline bool SpdxLicenseIdHasBeenSet() const { return m_spdxLicenseIdHasBeenSet; }
/**
* <p>A valid identifier from <a
* href="https://spdx.org/licenses/">https://spdx.org/licenses/</a>.</p>
*/
inline void SetSpdxLicenseId(const Aws::String& value) { m_spdxLicenseIdHasBeenSet = true; m_spdxLicenseId = value; }
/**
* <p>A valid identifier from <a
* href="https://spdx.org/licenses/">https://spdx.org/licenses/</a>.</p>
*/
inline void SetSpdxLicenseId(Aws::String&& value) { m_spdxLicenseIdHasBeenSet = true; m_spdxLicenseId = std::move(value); }
/**
* <p>A valid identifier from <a
* href="https://spdx.org/licenses/">https://spdx.org/licenses/</a>.</p>
*/
inline void SetSpdxLicenseId(const char* value) { m_spdxLicenseIdHasBeenSet = true; m_spdxLicenseId.assign(value); }
/**
* <p>A valid identifier from <a
* href="https://spdx.org/licenses/">https://spdx.org/licenses/</a>.</p>
*/
inline ApplicationSummary& WithSpdxLicenseId(const Aws::String& value) { SetSpdxLicenseId(value); return *this;}
/**
* <p>A valid identifier from <a
* href="https://spdx.org/licenses/">https://spdx.org/licenses/</a>.</p>
*/
inline ApplicationSummary& WithSpdxLicenseId(Aws::String&& value) { SetSpdxLicenseId(std::move(value)); return *this;}
/**
* <p>A valid identifier from <a
* href="https://spdx.org/licenses/">https://spdx.org/licenses/</a>.</p>
*/
inline ApplicationSummary& WithSpdxLicenseId(const char* value) { SetSpdxLicenseId(value); return *this;}
private:
Aws::String m_applicationId;
bool m_applicationIdHasBeenSet;
Aws::String m_author;
bool m_authorHasBeenSet;
Aws::String m_creationTime;
bool m_creationTimeHasBeenSet;
Aws::String m_description;
bool m_descriptionHasBeenSet;
Aws::String m_homePageUrl;
bool m_homePageUrlHasBeenSet;
Aws::Vector<Aws::String> m_labels;
bool m_labelsHasBeenSet;
Aws::String m_name;
bool m_nameHasBeenSet;
Aws::String m_spdxLicenseId;
bool m_spdxLicenseIdHasBeenSet;
};
} // namespace Model
} // namespace ServerlessApplicationRepository
} // namespace Aws

View File

@@ -0,0 +1,133 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/serverlessrepo/ServerlessApplicationRepository_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 ServerlessApplicationRepository
{
namespace Model
{
/**
* <p>One of the parameters in the request is invalid.</p><p><h3>See Also:</h3>
* <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/BadRequestException">AWS
* API Reference</a></p>
*/
class AWS_SERVERLESSAPPLICATIONREPOSITORY_API BadRequestException
{
public:
BadRequestException();
BadRequestException(Aws::Utils::Json::JsonView jsonValue);
BadRequestException& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>400</p>
*/
inline const Aws::String& GetErrorCode() const{ return m_errorCode; }
/**
* <p>400</p>
*/
inline bool ErrorCodeHasBeenSet() const { return m_errorCodeHasBeenSet; }
/**
* <p>400</p>
*/
inline void SetErrorCode(const Aws::String& value) { m_errorCodeHasBeenSet = true; m_errorCode = value; }
/**
* <p>400</p>
*/
inline void SetErrorCode(Aws::String&& value) { m_errorCodeHasBeenSet = true; m_errorCode = std::move(value); }
/**
* <p>400</p>
*/
inline void SetErrorCode(const char* value) { m_errorCodeHasBeenSet = true; m_errorCode.assign(value); }
/**
* <p>400</p>
*/
inline BadRequestException& WithErrorCode(const Aws::String& value) { SetErrorCode(value); return *this;}
/**
* <p>400</p>
*/
inline BadRequestException& WithErrorCode(Aws::String&& value) { SetErrorCode(std::move(value)); return *this;}
/**
* <p>400</p>
*/
inline BadRequestException& WithErrorCode(const char* value) { SetErrorCode(value); return *this;}
/**
* <p>One of the parameters in the request is invalid.</p>
*/
inline const Aws::String& GetMessage() const{ return m_message; }
/**
* <p>One of the parameters in the request is invalid.</p>
*/
inline bool MessageHasBeenSet() const { return m_messageHasBeenSet; }
/**
* <p>One of the parameters in the request is invalid.</p>
*/
inline void SetMessage(const Aws::String& value) { m_messageHasBeenSet = true; m_message = value; }
/**
* <p>One of the parameters in the request is invalid.</p>
*/
inline void SetMessage(Aws::String&& value) { m_messageHasBeenSet = true; m_message = std::move(value); }
/**
* <p>One of the parameters in the request is invalid.</p>
*/
inline void SetMessage(const char* value) { m_messageHasBeenSet = true; m_message.assign(value); }
/**
* <p>One of the parameters in the request is invalid.</p>
*/
inline BadRequestException& WithMessage(const Aws::String& value) { SetMessage(value); return *this;}
/**
* <p>One of the parameters in the request is invalid.</p>
*/
inline BadRequestException& WithMessage(Aws::String&& value) { SetMessage(std::move(value)); return *this;}
/**
* <p>One of the parameters in the request is invalid.</p>
*/
inline BadRequestException& WithMessage(const char* value) { SetMessage(value); return *this;}
private:
Aws::String m_errorCode;
bool m_errorCodeHasBeenSet;
Aws::String m_message;
bool m_messageHasBeenSet;
};
} // namespace Model
} // namespace ServerlessApplicationRepository
} // namespace Aws

View File

@@ -0,0 +1,33 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/serverlessrepo/ServerlessApplicationRepository_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
namespace Aws
{
namespace ServerlessApplicationRepository
{
namespace Model
{
enum class Capability
{
NOT_SET,
CAPABILITY_IAM,
CAPABILITY_NAMED_IAM,
CAPABILITY_AUTO_EXPAND,
CAPABILITY_RESOURCE_POLICY
};
namespace CapabilityMapper
{
AWS_SERVERLESSAPPLICATIONREPOSITORY_API Capability GetCapabilityForName(const Aws::String& name);
AWS_SERVERLESSAPPLICATIONREPOSITORY_API Aws::String GetNameForCapability(Capability value);
} // namespace CapabilityMapper
} // namespace Model
} // namespace ServerlessApplicationRepository
} // namespace Aws

View File

@@ -0,0 +1,132 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/serverlessrepo/ServerlessApplicationRepository_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 ServerlessApplicationRepository
{
namespace Model
{
/**
* <p>The resource already exists.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/ConflictException">AWS
* API Reference</a></p>
*/
class AWS_SERVERLESSAPPLICATIONREPOSITORY_API ConflictException
{
public:
ConflictException();
ConflictException(Aws::Utils::Json::JsonView jsonValue);
ConflictException& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>409</p>
*/
inline const Aws::String& GetErrorCode() const{ return m_errorCode; }
/**
* <p>409</p>
*/
inline bool ErrorCodeHasBeenSet() const { return m_errorCodeHasBeenSet; }
/**
* <p>409</p>
*/
inline void SetErrorCode(const Aws::String& value) { m_errorCodeHasBeenSet = true; m_errorCode = value; }
/**
* <p>409</p>
*/
inline void SetErrorCode(Aws::String&& value) { m_errorCodeHasBeenSet = true; m_errorCode = std::move(value); }
/**
* <p>409</p>
*/
inline void SetErrorCode(const char* value) { m_errorCodeHasBeenSet = true; m_errorCode.assign(value); }
/**
* <p>409</p>
*/
inline ConflictException& WithErrorCode(const Aws::String& value) { SetErrorCode(value); return *this;}
/**
* <p>409</p>
*/
inline ConflictException& WithErrorCode(Aws::String&& value) { SetErrorCode(std::move(value)); return *this;}
/**
* <p>409</p>
*/
inline ConflictException& WithErrorCode(const char* value) { SetErrorCode(value); return *this;}
/**
* <p>The resource already exists.</p>
*/
inline const Aws::String& GetMessage() const{ return m_message; }
/**
* <p>The resource already exists.</p>
*/
inline bool MessageHasBeenSet() const { return m_messageHasBeenSet; }
/**
* <p>The resource already exists.</p>
*/
inline void SetMessage(const Aws::String& value) { m_messageHasBeenSet = true; m_message = value; }
/**
* <p>The resource already exists.</p>
*/
inline void SetMessage(Aws::String&& value) { m_messageHasBeenSet = true; m_message = std::move(value); }
/**
* <p>The resource already exists.</p>
*/
inline void SetMessage(const char* value) { m_messageHasBeenSet = true; m_message.assign(value); }
/**
* <p>The resource already exists.</p>
*/
inline ConflictException& WithMessage(const Aws::String& value) { SetMessage(value); return *this;}
/**
* <p>The resource already exists.</p>
*/
inline ConflictException& WithMessage(Aws::String&& value) { SetMessage(std::move(value)); return *this;}
/**
* <p>The resource already exists.</p>
*/
inline ConflictException& WithMessage(const char* value) { SetMessage(value); return *this;}
private:
Aws::String m_errorCode;
bool m_errorCodeHasBeenSet;
Aws::String m_message;
bool m_messageHasBeenSet;
};
} // namespace Model
} // namespace ServerlessApplicationRepository
} // namespace Aws

View File

@@ -0,0 +1,947 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/serverlessrepo/ServerlessApplicationRepository_EXPORTS.h>
#include <aws/serverlessrepo/ServerlessApplicationRepositoryRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <utility>
namespace Aws
{
namespace ServerlessApplicationRepository
{
namespace Model
{
/**
*/
class AWS_SERVERLESSAPPLICATIONREPOSITORY_API CreateApplicationRequest : public ServerlessApplicationRepositoryRequest
{
public:
CreateApplicationRequest();
// 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 "CreateApplication"; }
Aws::String SerializePayload() const override;
/**
* <p>The name of the author publishing the app.</p><p>Minimum length=1. Maximum
* length=127.</p><p>Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";</p>
*/
inline const Aws::String& GetAuthor() const{ return m_author; }
/**
* <p>The name of the author publishing the app.</p><p>Minimum length=1. Maximum
* length=127.</p><p>Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";</p>
*/
inline bool AuthorHasBeenSet() const { return m_authorHasBeenSet; }
/**
* <p>The name of the author publishing the app.</p><p>Minimum length=1. Maximum
* length=127.</p><p>Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";</p>
*/
inline void SetAuthor(const Aws::String& value) { m_authorHasBeenSet = true; m_author = value; }
/**
* <p>The name of the author publishing the app.</p><p>Minimum length=1. Maximum
* length=127.</p><p>Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";</p>
*/
inline void SetAuthor(Aws::String&& value) { m_authorHasBeenSet = true; m_author = std::move(value); }
/**
* <p>The name of the author publishing the app.</p><p>Minimum length=1. Maximum
* length=127.</p><p>Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";</p>
*/
inline void SetAuthor(const char* value) { m_authorHasBeenSet = true; m_author.assign(value); }
/**
* <p>The name of the author publishing the app.</p><p>Minimum length=1. Maximum
* length=127.</p><p>Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";</p>
*/
inline CreateApplicationRequest& WithAuthor(const Aws::String& value) { SetAuthor(value); return *this;}
/**
* <p>The name of the author publishing the app.</p><p>Minimum length=1. Maximum
* length=127.</p><p>Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";</p>
*/
inline CreateApplicationRequest& WithAuthor(Aws::String&& value) { SetAuthor(std::move(value)); return *this;}
/**
* <p>The name of the author publishing the app.</p><p>Minimum length=1. Maximum
* length=127.</p><p>Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";</p>
*/
inline CreateApplicationRequest& WithAuthor(const char* value) { SetAuthor(value); return *this;}
/**
* <p>The description of the application.</p><p>Minimum length=1. Maximum
* length=256</p>
*/
inline const Aws::String& GetDescription() const{ return m_description; }
/**
* <p>The description of the application.</p><p>Minimum length=1. Maximum
* length=256</p>
*/
inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
/**
* <p>The description of the application.</p><p>Minimum length=1. Maximum
* length=256</p>
*/
inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; }
/**
* <p>The description of the application.</p><p>Minimum length=1. Maximum
* length=256</p>
*/
inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); }
/**
* <p>The description of the application.</p><p>Minimum length=1. Maximum
* length=256</p>
*/
inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); }
/**
* <p>The description of the application.</p><p>Minimum length=1. Maximum
* length=256</p>
*/
inline CreateApplicationRequest& WithDescription(const Aws::String& value) { SetDescription(value); return *this;}
/**
* <p>The description of the application.</p><p>Minimum length=1. Maximum
* length=256</p>
*/
inline CreateApplicationRequest& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;}
/**
* <p>The description of the application.</p><p>Minimum length=1. Maximum
* length=256</p>
*/
inline CreateApplicationRequest& WithDescription(const char* value) { SetDescription(value); return *this;}
/**
* <p>A URL with more information about the application, for example the location
* of your GitHub repository for the application.</p>
*/
inline const Aws::String& GetHomePageUrl() const{ return m_homePageUrl; }
/**
* <p>A URL with more information about the application, for example the location
* of your GitHub repository for the application.</p>
*/
inline bool HomePageUrlHasBeenSet() const { return m_homePageUrlHasBeenSet; }
/**
* <p>A URL with more information about the application, for example the location
* of your GitHub repository for the application.</p>
*/
inline void SetHomePageUrl(const Aws::String& value) { m_homePageUrlHasBeenSet = true; m_homePageUrl = value; }
/**
* <p>A URL with more information about the application, for example the location
* of your GitHub repository for the application.</p>
*/
inline void SetHomePageUrl(Aws::String&& value) { m_homePageUrlHasBeenSet = true; m_homePageUrl = std::move(value); }
/**
* <p>A URL with more information about the application, for example the location
* of your GitHub repository for the application.</p>
*/
inline void SetHomePageUrl(const char* value) { m_homePageUrlHasBeenSet = true; m_homePageUrl.assign(value); }
/**
* <p>A URL with more information about the application, for example the location
* of your GitHub repository for the application.</p>
*/
inline CreateApplicationRequest& WithHomePageUrl(const Aws::String& value) { SetHomePageUrl(value); return *this;}
/**
* <p>A URL with more information about the application, for example the location
* of your GitHub repository for the application.</p>
*/
inline CreateApplicationRequest& WithHomePageUrl(Aws::String&& value) { SetHomePageUrl(std::move(value)); return *this;}
/**
* <p>A URL with more information about the application, for example the location
* of your GitHub repository for the application.</p>
*/
inline CreateApplicationRequest& WithHomePageUrl(const char* value) { SetHomePageUrl(value); return *this;}
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline const Aws::Vector<Aws::String>& GetLabels() const{ return m_labels; }
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline bool LabelsHasBeenSet() const { return m_labelsHasBeenSet; }
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline void SetLabels(const Aws::Vector<Aws::String>& value) { m_labelsHasBeenSet = true; m_labels = value; }
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline void SetLabels(Aws::Vector<Aws::String>&& value) { m_labelsHasBeenSet = true; m_labels = std::move(value); }
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline CreateApplicationRequest& WithLabels(const Aws::Vector<Aws::String>& value) { SetLabels(value); return *this;}
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline CreateApplicationRequest& WithLabels(Aws::Vector<Aws::String>&& value) { SetLabels(std::move(value)); return *this;}
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline CreateApplicationRequest& AddLabels(const Aws::String& value) { m_labelsHasBeenSet = true; m_labels.push_back(value); return *this; }
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline CreateApplicationRequest& AddLabels(Aws::String&& value) { m_labelsHasBeenSet = true; m_labels.push_back(std::move(value)); return *this; }
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline CreateApplicationRequest& AddLabels(const char* value) { m_labelsHasBeenSet = true; m_labels.push_back(value); return *this; }
/**
* <p>A local text file that contains the license of the app that matches the
* spdxLicenseID value of your application.
The file has the format
* file://&lt;path>/&lt;filename>.</p><p>Maximum size 5 MB</p><p>You can specify
* only one of licenseBody and licenseUrl; otherwise, an error results.</p>
*/
inline const Aws::String& GetLicenseBody() const{ return m_licenseBody; }
/**
* <p>A local text file that contains the license of the app that matches the
* spdxLicenseID value of your application.
The file has the format
* file://&lt;path>/&lt;filename>.</p><p>Maximum size 5 MB</p><p>You can specify
* only one of licenseBody and licenseUrl; otherwise, an error results.</p>
*/
inline bool LicenseBodyHasBeenSet() const { return m_licenseBodyHasBeenSet; }
/**
* <p>A local text file that contains the license of the app that matches the
* spdxLicenseID value of your application.
The file has the format
* file://&lt;path>/&lt;filename>.</p><p>Maximum size 5 MB</p><p>You can specify
* only one of licenseBody and licenseUrl; otherwise, an error results.</p>
*/
inline void SetLicenseBody(const Aws::String& value) { m_licenseBodyHasBeenSet = true; m_licenseBody = value; }
/**
* <p>A local text file that contains the license of the app that matches the
* spdxLicenseID value of your application.
The file has the format
* file://&lt;path>/&lt;filename>.</p><p>Maximum size 5 MB</p><p>You can specify
* only one of licenseBody and licenseUrl; otherwise, an error results.</p>
*/
inline void SetLicenseBody(Aws::String&& value) { m_licenseBodyHasBeenSet = true; m_licenseBody = std::move(value); }
/**
* <p>A local text file that contains the license of the app that matches the
* spdxLicenseID value of your application.
The file has the format
* file://&lt;path>/&lt;filename>.</p><p>Maximum size 5 MB</p><p>You can specify
* only one of licenseBody and licenseUrl; otherwise, an error results.</p>
*/
inline void SetLicenseBody(const char* value) { m_licenseBodyHasBeenSet = true; m_licenseBody.assign(value); }
/**
* <p>A local text file that contains the license of the app that matches the
* spdxLicenseID value of your application.
The file has the format
* file://&lt;path>/&lt;filename>.</p><p>Maximum size 5 MB</p><p>You can specify
* only one of licenseBody and licenseUrl; otherwise, an error results.</p>
*/
inline CreateApplicationRequest& WithLicenseBody(const Aws::String& value) { SetLicenseBody(value); return *this;}
/**
* <p>A local text file that contains the license of the app that matches the
* spdxLicenseID value of your application.
The file has the format
* file://&lt;path>/&lt;filename>.</p><p>Maximum size 5 MB</p><p>You can specify
* only one of licenseBody and licenseUrl; otherwise, an error results.</p>
*/
inline CreateApplicationRequest& WithLicenseBody(Aws::String&& value) { SetLicenseBody(std::move(value)); return *this;}
/**
* <p>A local text file that contains the license of the app that matches the
* spdxLicenseID value of your application.
The file has the format
* file://&lt;path>/&lt;filename>.</p><p>Maximum size 5 MB</p><p>You can specify
* only one of licenseBody and licenseUrl; otherwise, an error results.</p>
*/
inline CreateApplicationRequest& WithLicenseBody(const char* value) { SetLicenseBody(value); return *this;}
/**
* <p>A link to the S3 object that contains the license of the app that matches the
* spdxLicenseID value of your application.</p><p>Maximum size 5 MB</p><p>You can
* specify only one of licenseBody and licenseUrl; otherwise, an error results.</p>
*/
inline const Aws::String& GetLicenseUrl() const{ return m_licenseUrl; }
/**
* <p>A link to the S3 object that contains the license of the app that matches the
* spdxLicenseID value of your application.</p><p>Maximum size 5 MB</p><p>You can
* specify only one of licenseBody and licenseUrl; otherwise, an error results.</p>
*/
inline bool LicenseUrlHasBeenSet() const { return m_licenseUrlHasBeenSet; }
/**
* <p>A link to the S3 object that contains the license of the app that matches the
* spdxLicenseID value of your application.</p><p>Maximum size 5 MB</p><p>You can
* specify only one of licenseBody and licenseUrl; otherwise, an error results.</p>
*/
inline void SetLicenseUrl(const Aws::String& value) { m_licenseUrlHasBeenSet = true; m_licenseUrl = value; }
/**
* <p>A link to the S3 object that contains the license of the app that matches the
* spdxLicenseID value of your application.</p><p>Maximum size 5 MB</p><p>You can
* specify only one of licenseBody and licenseUrl; otherwise, an error results.</p>
*/
inline void SetLicenseUrl(Aws::String&& value) { m_licenseUrlHasBeenSet = true; m_licenseUrl = std::move(value); }
/**
* <p>A link to the S3 object that contains the license of the app that matches the
* spdxLicenseID value of your application.</p><p>Maximum size 5 MB</p><p>You can
* specify only one of licenseBody and licenseUrl; otherwise, an error results.</p>
*/
inline void SetLicenseUrl(const char* value) { m_licenseUrlHasBeenSet = true; m_licenseUrl.assign(value); }
/**
* <p>A link to the S3 object that contains the license of the app that matches the
* spdxLicenseID value of your application.</p><p>Maximum size 5 MB</p><p>You can
* specify only one of licenseBody and licenseUrl; otherwise, an error results.</p>
*/
inline CreateApplicationRequest& WithLicenseUrl(const Aws::String& value) { SetLicenseUrl(value); return *this;}
/**
* <p>A link to the S3 object that contains the license of the app that matches the
* spdxLicenseID value of your application.</p><p>Maximum size 5 MB</p><p>You can
* specify only one of licenseBody and licenseUrl; otherwise, an error results.</p>
*/
inline CreateApplicationRequest& WithLicenseUrl(Aws::String&& value) { SetLicenseUrl(std::move(value)); return *this;}
/**
* <p>A link to the S3 object that contains the license of the app that matches the
* spdxLicenseID value of your application.</p><p>Maximum size 5 MB</p><p>You can
* specify only one of licenseBody and licenseUrl; otherwise, an error results.</p>
*/
inline CreateApplicationRequest& WithLicenseUrl(const char* value) { SetLicenseUrl(value); return *this;}
/**
* <p>The name of the application that you want to publish.</p><p>Minimum length=1.
* Maximum length=140</p><p>Pattern: "[a-zA-Z0-9\\-]+";</p>
*/
inline const Aws::String& GetName() const{ return m_name; }
/**
* <p>The name of the application that you want to publish.</p><p>Minimum length=1.
* Maximum length=140</p><p>Pattern: "[a-zA-Z0-9\\-]+";</p>
*/
inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
/**
* <p>The name of the application that you want to publish.</p><p>Minimum length=1.
* Maximum length=140</p><p>Pattern: "[a-zA-Z0-9\\-]+";</p>
*/
inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; }
/**
* <p>The name of the application that you want to publish.</p><p>Minimum length=1.
* Maximum length=140</p><p>Pattern: "[a-zA-Z0-9\\-]+";</p>
*/
inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); }
/**
* <p>The name of the application that you want to publish.</p><p>Minimum length=1.
* Maximum length=140</p><p>Pattern: "[a-zA-Z0-9\\-]+";</p>
*/
inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); }
/**
* <p>The name of the application that you want to publish.</p><p>Minimum length=1.
* Maximum length=140</p><p>Pattern: "[a-zA-Z0-9\\-]+";</p>
*/
inline CreateApplicationRequest& WithName(const Aws::String& value) { SetName(value); return *this;}
/**
* <p>The name of the application that you want to publish.</p><p>Minimum length=1.
* Maximum length=140</p><p>Pattern: "[a-zA-Z0-9\\-]+";</p>
*/
inline CreateApplicationRequest& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;}
/**
* <p>The name of the application that you want to publish.</p><p>Minimum length=1.
* Maximum length=140</p><p>Pattern: "[a-zA-Z0-9\\-]+";</p>
*/
inline CreateApplicationRequest& WithName(const char* value) { SetName(value); return *this;}
/**
* <p>A local text readme file in Markdown language that contains a more detailed
* description of the application and how it works.
The file has the format
* file://&lt;path>/&lt;filename>.</p><p>Maximum size 5 MB</p><p>You can specify
* only one of readmeBody and readmeUrl; otherwise, an error results.</p>
*/
inline const Aws::String& GetReadmeBody() const{ return m_readmeBody; }
/**
* <p>A local text readme file in Markdown language that contains a more detailed
* description of the application and how it works.
The file has the format
* file://&lt;path>/&lt;filename>.</p><p>Maximum size 5 MB</p><p>You can specify
* only one of readmeBody and readmeUrl; otherwise, an error results.</p>
*/
inline bool ReadmeBodyHasBeenSet() const { return m_readmeBodyHasBeenSet; }
/**
* <p>A local text readme file in Markdown language that contains a more detailed
* description of the application and how it works.
The file has the format
* file://&lt;path>/&lt;filename>.</p><p>Maximum size 5 MB</p><p>You can specify
* only one of readmeBody and readmeUrl; otherwise, an error results.</p>
*/
inline void SetReadmeBody(const Aws::String& value) { m_readmeBodyHasBeenSet = true; m_readmeBody = value; }
/**
* <p>A local text readme file in Markdown language that contains a more detailed
* description of the application and how it works.
The file has the format
* file://&lt;path>/&lt;filename>.</p><p>Maximum size 5 MB</p><p>You can specify
* only one of readmeBody and readmeUrl; otherwise, an error results.</p>
*/
inline void SetReadmeBody(Aws::String&& value) { m_readmeBodyHasBeenSet = true; m_readmeBody = std::move(value); }
/**
* <p>A local text readme file in Markdown language that contains a more detailed
* description of the application and how it works.
The file has the format
* file://&lt;path>/&lt;filename>.</p><p>Maximum size 5 MB</p><p>You can specify
* only one of readmeBody and readmeUrl; otherwise, an error results.</p>
*/
inline void SetReadmeBody(const char* value) { m_readmeBodyHasBeenSet = true; m_readmeBody.assign(value); }
/**
* <p>A local text readme file in Markdown language that contains a more detailed
* description of the application and how it works.
The file has the format
* file://&lt;path>/&lt;filename>.</p><p>Maximum size 5 MB</p><p>You can specify
* only one of readmeBody and readmeUrl; otherwise, an error results.</p>
*/
inline CreateApplicationRequest& WithReadmeBody(const Aws::String& value) { SetReadmeBody(value); return *this;}
/**
* <p>A local text readme file in Markdown language that contains a more detailed
* description of the application and how it works.
The file has the format
* file://&lt;path>/&lt;filename>.</p><p>Maximum size 5 MB</p><p>You can specify
* only one of readmeBody and readmeUrl; otherwise, an error results.</p>
*/
inline CreateApplicationRequest& WithReadmeBody(Aws::String&& value) { SetReadmeBody(std::move(value)); return *this;}
/**
* <p>A local text readme file in Markdown language that contains a more detailed
* description of the application and how it works.
The file has the format
* file://&lt;path>/&lt;filename>.</p><p>Maximum size 5 MB</p><p>You can specify
* only one of readmeBody and readmeUrl; otherwise, an error results.</p>
*/
inline CreateApplicationRequest& WithReadmeBody(const char* value) { SetReadmeBody(value); return *this;}
/**
* <p>A link to the S3 object in Markdown language that contains a more detailed
* description of the application and how it works.</p><p>Maximum size 5
* MB</p><p>You can specify only one of readmeBody and readmeUrl; otherwise, an
* error results.</p>
*/
inline const Aws::String& GetReadmeUrl() const{ return m_readmeUrl; }
/**
* <p>A link to the S3 object in Markdown language that contains a more detailed
* description of the application and how it works.</p><p>Maximum size 5
* MB</p><p>You can specify only one of readmeBody and readmeUrl; otherwise, an
* error results.</p>
*/
inline bool ReadmeUrlHasBeenSet() const { return m_readmeUrlHasBeenSet; }
/**
* <p>A link to the S3 object in Markdown language that contains a more detailed
* description of the application and how it works.</p><p>Maximum size 5
* MB</p><p>You can specify only one of readmeBody and readmeUrl; otherwise, an
* error results.</p>
*/
inline void SetReadmeUrl(const Aws::String& value) { m_readmeUrlHasBeenSet = true; m_readmeUrl = value; }
/**
* <p>A link to the S3 object in Markdown language that contains a more detailed
* description of the application and how it works.</p><p>Maximum size 5
* MB</p><p>You can specify only one of readmeBody and readmeUrl; otherwise, an
* error results.</p>
*/
inline void SetReadmeUrl(Aws::String&& value) { m_readmeUrlHasBeenSet = true; m_readmeUrl = std::move(value); }
/**
* <p>A link to the S3 object in Markdown language that contains a more detailed
* description of the application and how it works.</p><p>Maximum size 5
* MB</p><p>You can specify only one of readmeBody and readmeUrl; otherwise, an
* error results.</p>
*/
inline void SetReadmeUrl(const char* value) { m_readmeUrlHasBeenSet = true; m_readmeUrl.assign(value); }
/**
* <p>A link to the S3 object in Markdown language that contains a more detailed
* description of the application and how it works.</p><p>Maximum size 5
* MB</p><p>You can specify only one of readmeBody and readmeUrl; otherwise, an
* error results.</p>
*/
inline CreateApplicationRequest& WithReadmeUrl(const Aws::String& value) { SetReadmeUrl(value); return *this;}
/**
* <p>A link to the S3 object in Markdown language that contains a more detailed
* description of the application and how it works.</p><p>Maximum size 5
* MB</p><p>You can specify only one of readmeBody and readmeUrl; otherwise, an
* error results.</p>
*/
inline CreateApplicationRequest& WithReadmeUrl(Aws::String&& value) { SetReadmeUrl(std::move(value)); return *this;}
/**
* <p>A link to the S3 object in Markdown language that contains a more detailed
* description of the application and how it works.</p><p>Maximum size 5
* MB</p><p>You can specify only one of readmeBody and readmeUrl; otherwise, an
* error results.</p>
*/
inline CreateApplicationRequest& WithReadmeUrl(const char* value) { SetReadmeUrl(value); return *this;}
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline const Aws::String& GetSemanticVersion() const{ return m_semanticVersion; }
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline bool SemanticVersionHasBeenSet() const { return m_semanticVersionHasBeenSet; }
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline void SetSemanticVersion(const Aws::String& value) { m_semanticVersionHasBeenSet = true; m_semanticVersion = value; }
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline void SetSemanticVersion(Aws::String&& value) { m_semanticVersionHasBeenSet = true; m_semanticVersion = std::move(value); }
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline void SetSemanticVersion(const char* value) { m_semanticVersionHasBeenSet = true; m_semanticVersion.assign(value); }
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline CreateApplicationRequest& WithSemanticVersion(const Aws::String& value) { SetSemanticVersion(value); return *this;}
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline CreateApplicationRequest& WithSemanticVersion(Aws::String&& value) { SetSemanticVersion(std::move(value)); return *this;}
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline CreateApplicationRequest& WithSemanticVersion(const char* value) { SetSemanticVersion(value); return *this;}
/**
* <p>A link to the S3 object that contains the ZIP archive of the source code for
* this version of your application.</p><p>Maximum size 50 MB</p>
*/
inline const Aws::String& GetSourceCodeArchiveUrl() const{ return m_sourceCodeArchiveUrl; }
/**
* <p>A link to the S3 object that contains the ZIP archive of the source code for
* this version of your application.</p><p>Maximum size 50 MB</p>
*/
inline bool SourceCodeArchiveUrlHasBeenSet() const { return m_sourceCodeArchiveUrlHasBeenSet; }
/**
* <p>A link to the S3 object that contains the ZIP archive of the source code for
* this version of your application.</p><p>Maximum size 50 MB</p>
*/
inline void SetSourceCodeArchiveUrl(const Aws::String& value) { m_sourceCodeArchiveUrlHasBeenSet = true; m_sourceCodeArchiveUrl = value; }
/**
* <p>A link to the S3 object that contains the ZIP archive of the source code for
* this version of your application.</p><p>Maximum size 50 MB</p>
*/
inline void SetSourceCodeArchiveUrl(Aws::String&& value) { m_sourceCodeArchiveUrlHasBeenSet = true; m_sourceCodeArchiveUrl = std::move(value); }
/**
* <p>A link to the S3 object that contains the ZIP archive of the source code for
* this version of your application.</p><p>Maximum size 50 MB</p>
*/
inline void SetSourceCodeArchiveUrl(const char* value) { m_sourceCodeArchiveUrlHasBeenSet = true; m_sourceCodeArchiveUrl.assign(value); }
/**
* <p>A link to the S3 object that contains the ZIP archive of the source code for
* this version of your application.</p><p>Maximum size 50 MB</p>
*/
inline CreateApplicationRequest& WithSourceCodeArchiveUrl(const Aws::String& value) { SetSourceCodeArchiveUrl(value); return *this;}
/**
* <p>A link to the S3 object that contains the ZIP archive of the source code for
* this version of your application.</p><p>Maximum size 50 MB</p>
*/
inline CreateApplicationRequest& WithSourceCodeArchiveUrl(Aws::String&& value) { SetSourceCodeArchiveUrl(std::move(value)); return *this;}
/**
* <p>A link to the S3 object that contains the ZIP archive of the source code for
* this version of your application.</p><p>Maximum size 50 MB</p>
*/
inline CreateApplicationRequest& WithSourceCodeArchiveUrl(const char* value) { SetSourceCodeArchiveUrl(value); return *this;}
/**
* <p>A link to a public repository for the source code of your application, for
* example the URL of a specific GitHub commit.</p>
*/
inline const Aws::String& GetSourceCodeUrl() const{ return m_sourceCodeUrl; }
/**
* <p>A link to a public repository for the source code of your application, for
* example the URL of a specific GitHub commit.</p>
*/
inline bool SourceCodeUrlHasBeenSet() const { return m_sourceCodeUrlHasBeenSet; }
/**
* <p>A link to a public repository for the source code of your application, for
* example the URL of a specific GitHub commit.</p>
*/
inline void SetSourceCodeUrl(const Aws::String& value) { m_sourceCodeUrlHasBeenSet = true; m_sourceCodeUrl = value; }
/**
* <p>A link to a public repository for the source code of your application, for
* example the URL of a specific GitHub commit.</p>
*/
inline void SetSourceCodeUrl(Aws::String&& value) { m_sourceCodeUrlHasBeenSet = true; m_sourceCodeUrl = std::move(value); }
/**
* <p>A link to a public repository for the source code of your application, for
* example the URL of a specific GitHub commit.</p>
*/
inline void SetSourceCodeUrl(const char* value) { m_sourceCodeUrlHasBeenSet = true; m_sourceCodeUrl.assign(value); }
/**
* <p>A link to a public repository for the source code of your application, for
* example the URL of a specific GitHub commit.</p>
*/
inline CreateApplicationRequest& WithSourceCodeUrl(const Aws::String& value) { SetSourceCodeUrl(value); return *this;}
/**
* <p>A link to a public repository for the source code of your application, for
* example the URL of a specific GitHub commit.</p>
*/
inline CreateApplicationRequest& WithSourceCodeUrl(Aws::String&& value) { SetSourceCodeUrl(std::move(value)); return *this;}
/**
* <p>A link to a public repository for the source code of your application, for
* example the URL of a specific GitHub commit.</p>
*/
inline CreateApplicationRequest& WithSourceCodeUrl(const char* value) { SetSourceCodeUrl(value); return *this;}
/**
* <p>A valid identifier from <a
* href="https://spdx.org/licenses/">https://spdx.org/licenses/</a>.</p>
*/
inline const Aws::String& GetSpdxLicenseId() const{ return m_spdxLicenseId; }
/**
* <p>A valid identifier from <a
* href="https://spdx.org/licenses/">https://spdx.org/licenses/</a>.</p>
*/
inline bool SpdxLicenseIdHasBeenSet() const { return m_spdxLicenseIdHasBeenSet; }
/**
* <p>A valid identifier from <a
* href="https://spdx.org/licenses/">https://spdx.org/licenses/</a>.</p>
*/
inline void SetSpdxLicenseId(const Aws::String& value) { m_spdxLicenseIdHasBeenSet = true; m_spdxLicenseId = value; }
/**
* <p>A valid identifier from <a
* href="https://spdx.org/licenses/">https://spdx.org/licenses/</a>.</p>
*/
inline void SetSpdxLicenseId(Aws::String&& value) { m_spdxLicenseIdHasBeenSet = true; m_spdxLicenseId = std::move(value); }
/**
* <p>A valid identifier from <a
* href="https://spdx.org/licenses/">https://spdx.org/licenses/</a>.</p>
*/
inline void SetSpdxLicenseId(const char* value) { m_spdxLicenseIdHasBeenSet = true; m_spdxLicenseId.assign(value); }
/**
* <p>A valid identifier from <a
* href="https://spdx.org/licenses/">https://spdx.org/licenses/</a>.</p>
*/
inline CreateApplicationRequest& WithSpdxLicenseId(const Aws::String& value) { SetSpdxLicenseId(value); return *this;}
/**
* <p>A valid identifier from <a
* href="https://spdx.org/licenses/">https://spdx.org/licenses/</a>.</p>
*/
inline CreateApplicationRequest& WithSpdxLicenseId(Aws::String&& value) { SetSpdxLicenseId(std::move(value)); return *this;}
/**
* <p>A valid identifier from <a
* href="https://spdx.org/licenses/">https://spdx.org/licenses/</a>.</p>
*/
inline CreateApplicationRequest& WithSpdxLicenseId(const char* value) { SetSpdxLicenseId(value); return *this;}
/**
* <p>The local raw packaged AWS SAM template file of your application.
The file
* has the format file://&lt;path>/&lt;filename>.</p><p>You can specify only one of
* templateBody and templateUrl; otherwise an error results.</p>
*/
inline const Aws::String& GetTemplateBody() const{ return m_templateBody; }
/**
* <p>The local raw packaged AWS SAM template file of your application.
The file
* has the format file://&lt;path>/&lt;filename>.</p><p>You can specify only one of
* templateBody and templateUrl; otherwise an error results.</p>
*/
inline bool TemplateBodyHasBeenSet() const { return m_templateBodyHasBeenSet; }
/**
* <p>The local raw packaged AWS SAM template file of your application.
The file
* has the format file://&lt;path>/&lt;filename>.</p><p>You can specify only one of
* templateBody and templateUrl; otherwise an error results.</p>
*/
inline void SetTemplateBody(const Aws::String& value) { m_templateBodyHasBeenSet = true; m_templateBody = value; }
/**
* <p>The local raw packaged AWS SAM template file of your application.
The file
* has the format file://&lt;path>/&lt;filename>.</p><p>You can specify only one of
* templateBody and templateUrl; otherwise an error results.</p>
*/
inline void SetTemplateBody(Aws::String&& value) { m_templateBodyHasBeenSet = true; m_templateBody = std::move(value); }
/**
* <p>The local raw packaged AWS SAM template file of your application.
The file
* has the format file://&lt;path>/&lt;filename>.</p><p>You can specify only one of
* templateBody and templateUrl; otherwise an error results.</p>
*/
inline void SetTemplateBody(const char* value) { m_templateBodyHasBeenSet = true; m_templateBody.assign(value); }
/**
* <p>The local raw packaged AWS SAM template file of your application.
The file
* has the format file://&lt;path>/&lt;filename>.</p><p>You can specify only one of
* templateBody and templateUrl; otherwise an error results.</p>
*/
inline CreateApplicationRequest& WithTemplateBody(const Aws::String& value) { SetTemplateBody(value); return *this;}
/**
* <p>The local raw packaged AWS SAM template file of your application.
The file
* has the format file://&lt;path>/&lt;filename>.</p><p>You can specify only one of
* templateBody and templateUrl; otherwise an error results.</p>
*/
inline CreateApplicationRequest& WithTemplateBody(Aws::String&& value) { SetTemplateBody(std::move(value)); return *this;}
/**
* <p>The local raw packaged AWS SAM template file of your application.
The file
* has the format file://&lt;path>/&lt;filename>.</p><p>You can specify only one of
* templateBody and templateUrl; otherwise an error results.</p>
*/
inline CreateApplicationRequest& WithTemplateBody(const char* value) { SetTemplateBody(value); return *this;}
/**
* <p>A link to the S3 object containing the packaged AWS SAM template of your
* application.</p><p>You can specify only one of templateBody and templateUrl;
* otherwise an error results.</p>
*/
inline const Aws::String& GetTemplateUrl() const{ return m_templateUrl; }
/**
* <p>A link to the S3 object containing the packaged AWS SAM template of your
* application.</p><p>You can specify only one of templateBody and templateUrl;
* otherwise an error results.</p>
*/
inline bool TemplateUrlHasBeenSet() const { return m_templateUrlHasBeenSet; }
/**
* <p>A link to the S3 object containing the packaged AWS SAM template of your
* application.</p><p>You can specify only one of templateBody and templateUrl;
* otherwise an error results.</p>
*/
inline void SetTemplateUrl(const Aws::String& value) { m_templateUrlHasBeenSet = true; m_templateUrl = value; }
/**
* <p>A link to the S3 object containing the packaged AWS SAM template of your
* application.</p><p>You can specify only one of templateBody and templateUrl;
* otherwise an error results.</p>
*/
inline void SetTemplateUrl(Aws::String&& value) { m_templateUrlHasBeenSet = true; m_templateUrl = std::move(value); }
/**
* <p>A link to the S3 object containing the packaged AWS SAM template of your
* application.</p><p>You can specify only one of templateBody and templateUrl;
* otherwise an error results.</p>
*/
inline void SetTemplateUrl(const char* value) { m_templateUrlHasBeenSet = true; m_templateUrl.assign(value); }
/**
* <p>A link to the S3 object containing the packaged AWS SAM template of your
* application.</p><p>You can specify only one of templateBody and templateUrl;
* otherwise an error results.</p>
*/
inline CreateApplicationRequest& WithTemplateUrl(const Aws::String& value) { SetTemplateUrl(value); return *this;}
/**
* <p>A link to the S3 object containing the packaged AWS SAM template of your
* application.</p><p>You can specify only one of templateBody and templateUrl;
* otherwise an error results.</p>
*/
inline CreateApplicationRequest& WithTemplateUrl(Aws::String&& value) { SetTemplateUrl(std::move(value)); return *this;}
/**
* <p>A link to the S3 object containing the packaged AWS SAM template of your
* application.</p><p>You can specify only one of templateBody and templateUrl;
* otherwise an error results.</p>
*/
inline CreateApplicationRequest& WithTemplateUrl(const char* value) { SetTemplateUrl(value); return *this;}
private:
Aws::String m_author;
bool m_authorHasBeenSet;
Aws::String m_description;
bool m_descriptionHasBeenSet;
Aws::String m_homePageUrl;
bool m_homePageUrlHasBeenSet;
Aws::Vector<Aws::String> m_labels;
bool m_labelsHasBeenSet;
Aws::String m_licenseBody;
bool m_licenseBodyHasBeenSet;
Aws::String m_licenseUrl;
bool m_licenseUrlHasBeenSet;
Aws::String m_name;
bool m_nameHasBeenSet;
Aws::String m_readmeBody;
bool m_readmeBodyHasBeenSet;
Aws::String m_readmeUrl;
bool m_readmeUrlHasBeenSet;
Aws::String m_semanticVersion;
bool m_semanticVersionHasBeenSet;
Aws::String m_sourceCodeArchiveUrl;
bool m_sourceCodeArchiveUrlHasBeenSet;
Aws::String m_sourceCodeUrl;
bool m_sourceCodeUrlHasBeenSet;
Aws::String m_spdxLicenseId;
bool m_spdxLicenseIdHasBeenSet;
Aws::String m_templateBody;
bool m_templateBodyHasBeenSet;
Aws::String m_templateUrl;
bool m_templateUrlHasBeenSet;
};
} // namespace Model
} // namespace ServerlessApplicationRepository
} // namespace Aws

View File

@@ -0,0 +1,584 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/serverlessrepo/ServerlessApplicationRepository_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/serverlessrepo/model/Version.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace ServerlessApplicationRepository
{
namespace Model
{
class AWS_SERVERLESSAPPLICATIONREPOSITORY_API CreateApplicationResult
{
public:
CreateApplicationResult();
CreateApplicationResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
CreateApplicationResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline const Aws::String& GetApplicationId() const{ return m_applicationId; }
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline void SetApplicationId(const Aws::String& value) { m_applicationId = value; }
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline void SetApplicationId(Aws::String&& value) { m_applicationId = std::move(value); }
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline void SetApplicationId(const char* value) { m_applicationId.assign(value); }
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline CreateApplicationResult& WithApplicationId(const Aws::String& value) { SetApplicationId(value); return *this;}
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline CreateApplicationResult& WithApplicationId(Aws::String&& value) { SetApplicationId(std::move(value)); return *this;}
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline CreateApplicationResult& WithApplicationId(const char* value) { SetApplicationId(value); return *this;}
/**
* <p>The name of the author publishing the app.</p><p>Minimum length=1. Maximum
* length=127.</p><p>Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";</p>
*/
inline const Aws::String& GetAuthor() const{ return m_author; }
/**
* <p>The name of the author publishing the app.</p><p>Minimum length=1. Maximum
* length=127.</p><p>Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";</p>
*/
inline void SetAuthor(const Aws::String& value) { m_author = value; }
/**
* <p>The name of the author publishing the app.</p><p>Minimum length=1. Maximum
* length=127.</p><p>Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";</p>
*/
inline void SetAuthor(Aws::String&& value) { m_author = std::move(value); }
/**
* <p>The name of the author publishing the app.</p><p>Minimum length=1. Maximum
* length=127.</p><p>Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";</p>
*/
inline void SetAuthor(const char* value) { m_author.assign(value); }
/**
* <p>The name of the author publishing the app.</p><p>Minimum length=1. Maximum
* length=127.</p><p>Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";</p>
*/
inline CreateApplicationResult& WithAuthor(const Aws::String& value) { SetAuthor(value); return *this;}
/**
* <p>The name of the author publishing the app.</p><p>Minimum length=1. Maximum
* length=127.</p><p>Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";</p>
*/
inline CreateApplicationResult& WithAuthor(Aws::String&& value) { SetAuthor(std::move(value)); return *this;}
/**
* <p>The name of the author publishing the app.</p><p>Minimum length=1. Maximum
* length=127.</p><p>Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";</p>
*/
inline CreateApplicationResult& WithAuthor(const char* value) { SetAuthor(value); return *this;}
/**
* <p>The date and time this resource was created.</p>
*/
inline const Aws::String& GetCreationTime() const{ return m_creationTime; }
/**
* <p>The date and time this resource was created.</p>
*/
inline void SetCreationTime(const Aws::String& value) { m_creationTime = value; }
/**
* <p>The date and time this resource was created.</p>
*/
inline void SetCreationTime(Aws::String&& value) { m_creationTime = std::move(value); }
/**
* <p>The date and time this resource was created.</p>
*/
inline void SetCreationTime(const char* value) { m_creationTime.assign(value); }
/**
* <p>The date and time this resource was created.</p>
*/
inline CreateApplicationResult& WithCreationTime(const Aws::String& value) { SetCreationTime(value); return *this;}
/**
* <p>The date and time this resource was created.</p>
*/
inline CreateApplicationResult& WithCreationTime(Aws::String&& value) { SetCreationTime(std::move(value)); return *this;}
/**
* <p>The date and time this resource was created.</p>
*/
inline CreateApplicationResult& WithCreationTime(const char* value) { SetCreationTime(value); return *this;}
/**
* <p>The description of the application.</p><p>Minimum length=1. Maximum
* length=256</p>
*/
inline const Aws::String& GetDescription() const{ return m_description; }
/**
* <p>The description of the application.</p><p>Minimum length=1. Maximum
* length=256</p>
*/
inline void SetDescription(const Aws::String& value) { m_description = value; }
/**
* <p>The description of the application.</p><p>Minimum length=1. Maximum
* length=256</p>
*/
inline void SetDescription(Aws::String&& value) { m_description = std::move(value); }
/**
* <p>The description of the application.</p><p>Minimum length=1. Maximum
* length=256</p>
*/
inline void SetDescription(const char* value) { m_description.assign(value); }
/**
* <p>The description of the application.</p><p>Minimum length=1. Maximum
* length=256</p>
*/
inline CreateApplicationResult& WithDescription(const Aws::String& value) { SetDescription(value); return *this;}
/**
* <p>The description of the application.</p><p>Minimum length=1. Maximum
* length=256</p>
*/
inline CreateApplicationResult& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;}
/**
* <p>The description of the application.</p><p>Minimum length=1. Maximum
* length=256</p>
*/
inline CreateApplicationResult& WithDescription(const char* value) { SetDescription(value); return *this;}
/**
* <p>A URL with more information about the application, for example the location
* of your GitHub repository for the application.</p>
*/
inline const Aws::String& GetHomePageUrl() const{ return m_homePageUrl; }
/**
* <p>A URL with more information about the application, for example the location
* of your GitHub repository for the application.</p>
*/
inline void SetHomePageUrl(const Aws::String& value) { m_homePageUrl = value; }
/**
* <p>A URL with more information about the application, for example the location
* of your GitHub repository for the application.</p>
*/
inline void SetHomePageUrl(Aws::String&& value) { m_homePageUrl = std::move(value); }
/**
* <p>A URL with more information about the application, for example the location
* of your GitHub repository for the application.</p>
*/
inline void SetHomePageUrl(const char* value) { m_homePageUrl.assign(value); }
/**
* <p>A URL with more information about the application, for example the location
* of your GitHub repository for the application.</p>
*/
inline CreateApplicationResult& WithHomePageUrl(const Aws::String& value) { SetHomePageUrl(value); return *this;}
/**
* <p>A URL with more information about the application, for example the location
* of your GitHub repository for the application.</p>
*/
inline CreateApplicationResult& WithHomePageUrl(Aws::String&& value) { SetHomePageUrl(std::move(value)); return *this;}
/**
* <p>A URL with more information about the application, for example the location
* of your GitHub repository for the application.</p>
*/
inline CreateApplicationResult& WithHomePageUrl(const char* value) { SetHomePageUrl(value); return *this;}
/**
* <p>Whether the author of this application has been verified. This means means
* that AWS has made a good faith review, as a reasonable and prudent service
* provider, of the information provided by the requester and has confirmed that
* the requester's identity is as claimed.</p>
*/
inline bool GetIsVerifiedAuthor() const{ return m_isVerifiedAuthor; }
/**
* <p>Whether the author of this application has been verified. This means means
* that AWS has made a good faith review, as a reasonable and prudent service
* provider, of the information provided by the requester and has confirmed that
* the requester's identity is as claimed.</p>
*/
inline void SetIsVerifiedAuthor(bool value) { m_isVerifiedAuthor = value; }
/**
* <p>Whether the author of this application has been verified. This means means
* that AWS has made a good faith review, as a reasonable and prudent service
* provider, of the information provided by the requester and has confirmed that
* the requester's identity is as claimed.</p>
*/
inline CreateApplicationResult& WithIsVerifiedAuthor(bool value) { SetIsVerifiedAuthor(value); return *this;}
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline const Aws::Vector<Aws::String>& GetLabels() const{ return m_labels; }
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline void SetLabels(const Aws::Vector<Aws::String>& value) { m_labels = value; }
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline void SetLabels(Aws::Vector<Aws::String>&& value) { m_labels = std::move(value); }
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline CreateApplicationResult& WithLabels(const Aws::Vector<Aws::String>& value) { SetLabels(value); return *this;}
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline CreateApplicationResult& WithLabels(Aws::Vector<Aws::String>&& value) { SetLabels(std::move(value)); return *this;}
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline CreateApplicationResult& AddLabels(const Aws::String& value) { m_labels.push_back(value); return *this; }
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline CreateApplicationResult& AddLabels(Aws::String&& value) { m_labels.push_back(std::move(value)); return *this; }
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline CreateApplicationResult& AddLabels(const char* value) { m_labels.push_back(value); return *this; }
/**
* <p>A link to a license file of the app that matches the spdxLicenseID value of
* your application.</p><p>Maximum size 5 MB</p>
*/
inline const Aws::String& GetLicenseUrl() const{ return m_licenseUrl; }
/**
* <p>A link to a license file of the app that matches the spdxLicenseID value of
* your application.</p><p>Maximum size 5 MB</p>
*/
inline void SetLicenseUrl(const Aws::String& value) { m_licenseUrl = value; }
/**
* <p>A link to a license file of the app that matches the spdxLicenseID value of
* your application.</p><p>Maximum size 5 MB</p>
*/
inline void SetLicenseUrl(Aws::String&& value) { m_licenseUrl = std::move(value); }
/**
* <p>A link to a license file of the app that matches the spdxLicenseID value of
* your application.</p><p>Maximum size 5 MB</p>
*/
inline void SetLicenseUrl(const char* value) { m_licenseUrl.assign(value); }
/**
* <p>A link to a license file of the app that matches the spdxLicenseID value of
* your application.</p><p>Maximum size 5 MB</p>
*/
inline CreateApplicationResult& WithLicenseUrl(const Aws::String& value) { SetLicenseUrl(value); return *this;}
/**
* <p>A link to a license file of the app that matches the spdxLicenseID value of
* your application.</p><p>Maximum size 5 MB</p>
*/
inline CreateApplicationResult& WithLicenseUrl(Aws::String&& value) { SetLicenseUrl(std::move(value)); return *this;}
/**
* <p>A link to a license file of the app that matches the spdxLicenseID value of
* your application.</p><p>Maximum size 5 MB</p>
*/
inline CreateApplicationResult& WithLicenseUrl(const char* value) { SetLicenseUrl(value); return *this;}
/**
* <p>The name of the application.</p><p>Minimum length=1. Maximum
* length=140</p><p>Pattern: "[a-zA-Z0-9\\-]+";</p>
*/
inline const Aws::String& GetName() const{ return m_name; }
/**
* <p>The name of the application.</p><p>Minimum length=1. Maximum
* length=140</p><p>Pattern: "[a-zA-Z0-9\\-]+";</p>
*/
inline void SetName(const Aws::String& value) { m_name = value; }
/**
* <p>The name of the application.</p><p>Minimum length=1. Maximum
* length=140</p><p>Pattern: "[a-zA-Z0-9\\-]+";</p>
*/
inline void SetName(Aws::String&& value) { m_name = std::move(value); }
/**
* <p>The name of the application.</p><p>Minimum length=1. Maximum
* length=140</p><p>Pattern: "[a-zA-Z0-9\\-]+";</p>
*/
inline void SetName(const char* value) { m_name.assign(value); }
/**
* <p>The name of the application.</p><p>Minimum length=1. Maximum
* length=140</p><p>Pattern: "[a-zA-Z0-9\\-]+";</p>
*/
inline CreateApplicationResult& WithName(const Aws::String& value) { SetName(value); return *this;}
/**
* <p>The name of the application.</p><p>Minimum length=1. Maximum
* length=140</p><p>Pattern: "[a-zA-Z0-9\\-]+";</p>
*/
inline CreateApplicationResult& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;}
/**
* <p>The name of the application.</p><p>Minimum length=1. Maximum
* length=140</p><p>Pattern: "[a-zA-Z0-9\\-]+";</p>
*/
inline CreateApplicationResult& WithName(const char* value) { SetName(value); return *this;}
/**
* <p>A link to the readme file in Markdown language that contains a more detailed
* description of the application and how it works.</p><p>Maximum size 5 MB</p>
*/
inline const Aws::String& GetReadmeUrl() const{ return m_readmeUrl; }
/**
* <p>A link to the readme file in Markdown language that contains a more detailed
* description of the application and how it works.</p><p>Maximum size 5 MB</p>
*/
inline void SetReadmeUrl(const Aws::String& value) { m_readmeUrl = value; }
/**
* <p>A link to the readme file in Markdown language that contains a more detailed
* description of the application and how it works.</p><p>Maximum size 5 MB</p>
*/
inline void SetReadmeUrl(Aws::String&& value) { m_readmeUrl = std::move(value); }
/**
* <p>A link to the readme file in Markdown language that contains a more detailed
* description of the application and how it works.</p><p>Maximum size 5 MB</p>
*/
inline void SetReadmeUrl(const char* value) { m_readmeUrl.assign(value); }
/**
* <p>A link to the readme file in Markdown language that contains a more detailed
* description of the application and how it works.</p><p>Maximum size 5 MB</p>
*/
inline CreateApplicationResult& WithReadmeUrl(const Aws::String& value) { SetReadmeUrl(value); return *this;}
/**
* <p>A link to the readme file in Markdown language that contains a more detailed
* description of the application and how it works.</p><p>Maximum size 5 MB</p>
*/
inline CreateApplicationResult& WithReadmeUrl(Aws::String&& value) { SetReadmeUrl(std::move(value)); return *this;}
/**
* <p>A link to the readme file in Markdown language that contains a more detailed
* description of the application and how it works.</p><p>Maximum size 5 MB</p>
*/
inline CreateApplicationResult& WithReadmeUrl(const char* value) { SetReadmeUrl(value); return *this;}
/**
* <p>A valid identifier from https://spdx.org/licenses/.</p>
*/
inline const Aws::String& GetSpdxLicenseId() const{ return m_spdxLicenseId; }
/**
* <p>A valid identifier from https://spdx.org/licenses/.</p>
*/
inline void SetSpdxLicenseId(const Aws::String& value) { m_spdxLicenseId = value; }
/**
* <p>A valid identifier from https://spdx.org/licenses/.</p>
*/
inline void SetSpdxLicenseId(Aws::String&& value) { m_spdxLicenseId = std::move(value); }
/**
* <p>A valid identifier from https://spdx.org/licenses/.</p>
*/
inline void SetSpdxLicenseId(const char* value) { m_spdxLicenseId.assign(value); }
/**
* <p>A valid identifier from https://spdx.org/licenses/.</p>
*/
inline CreateApplicationResult& WithSpdxLicenseId(const Aws::String& value) { SetSpdxLicenseId(value); return *this;}
/**
* <p>A valid identifier from https://spdx.org/licenses/.</p>
*/
inline CreateApplicationResult& WithSpdxLicenseId(Aws::String&& value) { SetSpdxLicenseId(std::move(value)); return *this;}
/**
* <p>A valid identifier from https://spdx.org/licenses/.</p>
*/
inline CreateApplicationResult& WithSpdxLicenseId(const char* value) { SetSpdxLicenseId(value); return *this;}
/**
* <p>The URL to the public profile of a verified author. This URL is submitted by
* the author.</p>
*/
inline const Aws::String& GetVerifiedAuthorUrl() const{ return m_verifiedAuthorUrl; }
/**
* <p>The URL to the public profile of a verified author. This URL is submitted by
* the author.</p>
*/
inline void SetVerifiedAuthorUrl(const Aws::String& value) { m_verifiedAuthorUrl = value; }
/**
* <p>The URL to the public profile of a verified author. This URL is submitted by
* the author.</p>
*/
inline void SetVerifiedAuthorUrl(Aws::String&& value) { m_verifiedAuthorUrl = std::move(value); }
/**
* <p>The URL to the public profile of a verified author. This URL is submitted by
* the author.</p>
*/
inline void SetVerifiedAuthorUrl(const char* value) { m_verifiedAuthorUrl.assign(value); }
/**
* <p>The URL to the public profile of a verified author. This URL is submitted by
* the author.</p>
*/
inline CreateApplicationResult& WithVerifiedAuthorUrl(const Aws::String& value) { SetVerifiedAuthorUrl(value); return *this;}
/**
* <p>The URL to the public profile of a verified author. This URL is submitted by
* the author.</p>
*/
inline CreateApplicationResult& WithVerifiedAuthorUrl(Aws::String&& value) { SetVerifiedAuthorUrl(std::move(value)); return *this;}
/**
* <p>The URL to the public profile of a verified author. This URL is submitted by
* the author.</p>
*/
inline CreateApplicationResult& WithVerifiedAuthorUrl(const char* value) { SetVerifiedAuthorUrl(value); return *this;}
/**
* <p>Version information about the application.</p>
*/
inline const Version& GetVersion() const{ return m_version; }
/**
* <p>Version information about the application.</p>
*/
inline void SetVersion(const Version& value) { m_version = value; }
/**
* <p>Version information about the application.</p>
*/
inline void SetVersion(Version&& value) { m_version = std::move(value); }
/**
* <p>Version information about the application.</p>
*/
inline CreateApplicationResult& WithVersion(const Version& value) { SetVersion(value); return *this;}
/**
* <p>Version information about the application.</p>
*/
inline CreateApplicationResult& WithVersion(Version&& value) { SetVersion(std::move(value)); return *this;}
private:
Aws::String m_applicationId;
Aws::String m_author;
Aws::String m_creationTime;
Aws::String m_description;
Aws::String m_homePageUrl;
bool m_isVerifiedAuthor;
Aws::Vector<Aws::String> m_labels;
Aws::String m_licenseUrl;
Aws::String m_name;
Aws::String m_readmeUrl;
Aws::String m_spdxLicenseId;
Aws::String m_verifiedAuthorUrl;
Version m_version;
};
} // namespace Model
} // namespace ServerlessApplicationRepository
} // namespace Aws

View File

@@ -0,0 +1,319 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/serverlessrepo/ServerlessApplicationRepository_EXPORTS.h>
#include <aws/serverlessrepo/ServerlessApplicationRepositoryRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace ServerlessApplicationRepository
{
namespace Model
{
/**
*/
class AWS_SERVERLESSAPPLICATIONREPOSITORY_API CreateApplicationVersionRequest : public ServerlessApplicationRepositoryRequest
{
public:
CreateApplicationVersionRequest();
// 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 "CreateApplicationVersion"; }
Aws::String SerializePayload() const override;
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline const Aws::String& GetApplicationId() const{ return m_applicationId; }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline bool ApplicationIdHasBeenSet() const { return m_applicationIdHasBeenSet; }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline void SetApplicationId(const Aws::String& value) { m_applicationIdHasBeenSet = true; m_applicationId = value; }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline void SetApplicationId(Aws::String&& value) { m_applicationIdHasBeenSet = true; m_applicationId = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline void SetApplicationId(const char* value) { m_applicationIdHasBeenSet = true; m_applicationId.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline CreateApplicationVersionRequest& WithApplicationId(const Aws::String& value) { SetApplicationId(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline CreateApplicationVersionRequest& WithApplicationId(Aws::String&& value) { SetApplicationId(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline CreateApplicationVersionRequest& WithApplicationId(const char* value) { SetApplicationId(value); return *this;}
/**
* <p>The semantic version of the new version.</p>
*/
inline const Aws::String& GetSemanticVersion() const{ return m_semanticVersion; }
/**
* <p>The semantic version of the new version.</p>
*/
inline bool SemanticVersionHasBeenSet() const { return m_semanticVersionHasBeenSet; }
/**
* <p>The semantic version of the new version.</p>
*/
inline void SetSemanticVersion(const Aws::String& value) { m_semanticVersionHasBeenSet = true; m_semanticVersion = value; }
/**
* <p>The semantic version of the new version.</p>
*/
inline void SetSemanticVersion(Aws::String&& value) { m_semanticVersionHasBeenSet = true; m_semanticVersion = std::move(value); }
/**
* <p>The semantic version of the new version.</p>
*/
inline void SetSemanticVersion(const char* value) { m_semanticVersionHasBeenSet = true; m_semanticVersion.assign(value); }
/**
* <p>The semantic version of the new version.</p>
*/
inline CreateApplicationVersionRequest& WithSemanticVersion(const Aws::String& value) { SetSemanticVersion(value); return *this;}
/**
* <p>The semantic version of the new version.</p>
*/
inline CreateApplicationVersionRequest& WithSemanticVersion(Aws::String&& value) { SetSemanticVersion(std::move(value)); return *this;}
/**
* <p>The semantic version of the new version.</p>
*/
inline CreateApplicationVersionRequest& WithSemanticVersion(const char* value) { SetSemanticVersion(value); return *this;}
/**
* <p>A link to the S3 object that contains the ZIP archive of the source code for
* this version of your application.</p><p>Maximum size 50 MB</p>
*/
inline const Aws::String& GetSourceCodeArchiveUrl() const{ return m_sourceCodeArchiveUrl; }
/**
* <p>A link to the S3 object that contains the ZIP archive of the source code for
* this version of your application.</p><p>Maximum size 50 MB</p>
*/
inline bool SourceCodeArchiveUrlHasBeenSet() const { return m_sourceCodeArchiveUrlHasBeenSet; }
/**
* <p>A link to the S3 object that contains the ZIP archive of the source code for
* this version of your application.</p><p>Maximum size 50 MB</p>
*/
inline void SetSourceCodeArchiveUrl(const Aws::String& value) { m_sourceCodeArchiveUrlHasBeenSet = true; m_sourceCodeArchiveUrl = value; }
/**
* <p>A link to the S3 object that contains the ZIP archive of the source code for
* this version of your application.</p><p>Maximum size 50 MB</p>
*/
inline void SetSourceCodeArchiveUrl(Aws::String&& value) { m_sourceCodeArchiveUrlHasBeenSet = true; m_sourceCodeArchiveUrl = std::move(value); }
/**
* <p>A link to the S3 object that contains the ZIP archive of the source code for
* this version of your application.</p><p>Maximum size 50 MB</p>
*/
inline void SetSourceCodeArchiveUrl(const char* value) { m_sourceCodeArchiveUrlHasBeenSet = true; m_sourceCodeArchiveUrl.assign(value); }
/**
* <p>A link to the S3 object that contains the ZIP archive of the source code for
* this version of your application.</p><p>Maximum size 50 MB</p>
*/
inline CreateApplicationVersionRequest& WithSourceCodeArchiveUrl(const Aws::String& value) { SetSourceCodeArchiveUrl(value); return *this;}
/**
* <p>A link to the S3 object that contains the ZIP archive of the source code for
* this version of your application.</p><p>Maximum size 50 MB</p>
*/
inline CreateApplicationVersionRequest& WithSourceCodeArchiveUrl(Aws::String&& value) { SetSourceCodeArchiveUrl(std::move(value)); return *this;}
/**
* <p>A link to the S3 object that contains the ZIP archive of the source code for
* this version of your application.</p><p>Maximum size 50 MB</p>
*/
inline CreateApplicationVersionRequest& WithSourceCodeArchiveUrl(const char* value) { SetSourceCodeArchiveUrl(value); return *this;}
/**
* <p>A link to a public repository for the source code of your application, for
* example the URL of a specific GitHub commit.</p>
*/
inline const Aws::String& GetSourceCodeUrl() const{ return m_sourceCodeUrl; }
/**
* <p>A link to a public repository for the source code of your application, for
* example the URL of a specific GitHub commit.</p>
*/
inline bool SourceCodeUrlHasBeenSet() const { return m_sourceCodeUrlHasBeenSet; }
/**
* <p>A link to a public repository for the source code of your application, for
* example the URL of a specific GitHub commit.</p>
*/
inline void SetSourceCodeUrl(const Aws::String& value) { m_sourceCodeUrlHasBeenSet = true; m_sourceCodeUrl = value; }
/**
* <p>A link to a public repository for the source code of your application, for
* example the URL of a specific GitHub commit.</p>
*/
inline void SetSourceCodeUrl(Aws::String&& value) { m_sourceCodeUrlHasBeenSet = true; m_sourceCodeUrl = std::move(value); }
/**
* <p>A link to a public repository for the source code of your application, for
* example the URL of a specific GitHub commit.</p>
*/
inline void SetSourceCodeUrl(const char* value) { m_sourceCodeUrlHasBeenSet = true; m_sourceCodeUrl.assign(value); }
/**
* <p>A link to a public repository for the source code of your application, for
* example the URL of a specific GitHub commit.</p>
*/
inline CreateApplicationVersionRequest& WithSourceCodeUrl(const Aws::String& value) { SetSourceCodeUrl(value); return *this;}
/**
* <p>A link to a public repository for the source code of your application, for
* example the URL of a specific GitHub commit.</p>
*/
inline CreateApplicationVersionRequest& WithSourceCodeUrl(Aws::String&& value) { SetSourceCodeUrl(std::move(value)); return *this;}
/**
* <p>A link to a public repository for the source code of your application, for
* example the URL of a specific GitHub commit.</p>
*/
inline CreateApplicationVersionRequest& WithSourceCodeUrl(const char* value) { SetSourceCodeUrl(value); return *this;}
/**
* <p>The raw packaged AWS SAM template of your application.</p>
*/
inline const Aws::String& GetTemplateBody() const{ return m_templateBody; }
/**
* <p>The raw packaged AWS SAM template of your application.</p>
*/
inline bool TemplateBodyHasBeenSet() const { return m_templateBodyHasBeenSet; }
/**
* <p>The raw packaged AWS SAM template of your application.</p>
*/
inline void SetTemplateBody(const Aws::String& value) { m_templateBodyHasBeenSet = true; m_templateBody = value; }
/**
* <p>The raw packaged AWS SAM template of your application.</p>
*/
inline void SetTemplateBody(Aws::String&& value) { m_templateBodyHasBeenSet = true; m_templateBody = std::move(value); }
/**
* <p>The raw packaged AWS SAM template of your application.</p>
*/
inline void SetTemplateBody(const char* value) { m_templateBodyHasBeenSet = true; m_templateBody.assign(value); }
/**
* <p>The raw packaged AWS SAM template of your application.</p>
*/
inline CreateApplicationVersionRequest& WithTemplateBody(const Aws::String& value) { SetTemplateBody(value); return *this;}
/**
* <p>The raw packaged AWS SAM template of your application.</p>
*/
inline CreateApplicationVersionRequest& WithTemplateBody(Aws::String&& value) { SetTemplateBody(std::move(value)); return *this;}
/**
* <p>The raw packaged AWS SAM template of your application.</p>
*/
inline CreateApplicationVersionRequest& WithTemplateBody(const char* value) { SetTemplateBody(value); return *this;}
/**
* <p>A link to the packaged AWS SAM template of your application.</p>
*/
inline const Aws::String& GetTemplateUrl() const{ return m_templateUrl; }
/**
* <p>A link to the packaged AWS SAM template of your application.</p>
*/
inline bool TemplateUrlHasBeenSet() const { return m_templateUrlHasBeenSet; }
/**
* <p>A link to the packaged AWS SAM template of your application.</p>
*/
inline void SetTemplateUrl(const Aws::String& value) { m_templateUrlHasBeenSet = true; m_templateUrl = value; }
/**
* <p>A link to the packaged AWS SAM template of your application.</p>
*/
inline void SetTemplateUrl(Aws::String&& value) { m_templateUrlHasBeenSet = true; m_templateUrl = std::move(value); }
/**
* <p>A link to the packaged AWS SAM template of your application.</p>
*/
inline void SetTemplateUrl(const char* value) { m_templateUrlHasBeenSet = true; m_templateUrl.assign(value); }
/**
* <p>A link to the packaged AWS SAM template of your application.</p>
*/
inline CreateApplicationVersionRequest& WithTemplateUrl(const Aws::String& value) { SetTemplateUrl(value); return *this;}
/**
* <p>A link to the packaged AWS SAM template of your application.</p>
*/
inline CreateApplicationVersionRequest& WithTemplateUrl(Aws::String&& value) { SetTemplateUrl(std::move(value)); return *this;}
/**
* <p>A link to the packaged AWS SAM template of your application.</p>
*/
inline CreateApplicationVersionRequest& WithTemplateUrl(const char* value) { SetTemplateUrl(value); return *this;}
private:
Aws::String m_applicationId;
bool m_applicationIdHasBeenSet;
Aws::String m_semanticVersion;
bool m_semanticVersionHasBeenSet;
Aws::String m_sourceCodeArchiveUrl;
bool m_sourceCodeArchiveUrlHasBeenSet;
Aws::String m_sourceCodeUrl;
bool m_sourceCodeUrlHasBeenSet;
Aws::String m_templateBody;
bool m_templateBodyHasBeenSet;
Aws::String m_templateUrl;
bool m_templateUrlHasBeenSet;
};
} // namespace Model
} // namespace ServerlessApplicationRepository
} // namespace Aws

View File

@@ -0,0 +1,797 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/serverlessrepo/ServerlessApplicationRepository_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/serverlessrepo/model/ParameterDefinition.h>
#include <aws/serverlessrepo/model/Capability.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace ServerlessApplicationRepository
{
namespace Model
{
class AWS_SERVERLESSAPPLICATIONREPOSITORY_API CreateApplicationVersionResult
{
public:
CreateApplicationVersionResult();
CreateApplicationVersionResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
CreateApplicationVersionResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline const Aws::String& GetApplicationId() const{ return m_applicationId; }
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline void SetApplicationId(const Aws::String& value) { m_applicationId = value; }
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline void SetApplicationId(Aws::String&& value) { m_applicationId = std::move(value); }
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline void SetApplicationId(const char* value) { m_applicationId.assign(value); }
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline CreateApplicationVersionResult& WithApplicationId(const Aws::String& value) { SetApplicationId(value); return *this;}
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline CreateApplicationVersionResult& WithApplicationId(Aws::String&& value) { SetApplicationId(std::move(value)); return *this;}
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline CreateApplicationVersionResult& WithApplicationId(const char* value) { SetApplicationId(value); return *this;}
/**
* <p>The date and time this resource was created.</p>
*/
inline const Aws::String& GetCreationTime() const{ return m_creationTime; }
/**
* <p>The date and time this resource was created.</p>
*/
inline void SetCreationTime(const Aws::String& value) { m_creationTime = value; }
/**
* <p>The date and time this resource was created.</p>
*/
inline void SetCreationTime(Aws::String&& value) { m_creationTime = std::move(value); }
/**
* <p>The date and time this resource was created.</p>
*/
inline void SetCreationTime(const char* value) { m_creationTime.assign(value); }
/**
* <p>The date and time this resource was created.</p>
*/
inline CreateApplicationVersionResult& WithCreationTime(const Aws::String& value) { SetCreationTime(value); return *this;}
/**
* <p>The date and time this resource was created.</p>
*/
inline CreateApplicationVersionResult& WithCreationTime(Aws::String&& value) { SetCreationTime(std::move(value)); return *this;}
/**
* <p>The date and time this resource was created.</p>
*/
inline CreateApplicationVersionResult& WithCreationTime(const char* value) { SetCreationTime(value); return *this;}
/**
* <p>An array of parameter types supported by the application.</p>
*/
inline const Aws::Vector<ParameterDefinition>& GetParameterDefinitions() const{ return m_parameterDefinitions; }
/**
* <p>An array of parameter types supported by the application.</p>
*/
inline void SetParameterDefinitions(const Aws::Vector<ParameterDefinition>& value) { m_parameterDefinitions = value; }
/**
* <p>An array of parameter types supported by the application.</p>
*/
inline void SetParameterDefinitions(Aws::Vector<ParameterDefinition>&& value) { m_parameterDefinitions = std::move(value); }
/**
* <p>An array of parameter types supported by the application.</p>
*/
inline CreateApplicationVersionResult& WithParameterDefinitions(const Aws::Vector<ParameterDefinition>& value) { SetParameterDefinitions(value); return *this;}
/**
* <p>An array of parameter types supported by the application.</p>
*/
inline CreateApplicationVersionResult& WithParameterDefinitions(Aws::Vector<ParameterDefinition>&& value) { SetParameterDefinitions(std::move(value)); return *this;}
/**
* <p>An array of parameter types supported by the application.</p>
*/
inline CreateApplicationVersionResult& AddParameterDefinitions(const ParameterDefinition& value) { m_parameterDefinitions.push_back(value); return *this; }
/**
* <p>An array of parameter types supported by the application.</p>
*/
inline CreateApplicationVersionResult& AddParameterDefinitions(ParameterDefinition&& value) { m_parameterDefinitions.push_back(std::move(value)); return *this; }
/**
* <p>A list of values that you must specify before you can deploy certain
* applications.
Some applications might include resources that can affect
* permissions in your AWS
account, for example, by creating new AWS Identity and
* Access Management (IAM) users.
For those applications, you must explicitly
* acknowledge their capabilities by
specifying this parameter.</p><p>The only
* valid values are CAPABILITY_IAM, CAPABILITY_NAMED_IAM,
* CAPABILITY_RESOURCE_POLICY, and CAPABILITY_AUTO_EXPAND.</p><p>The following
* resources require you to specify CAPABILITY_IAM or
CAPABILITY_NAMED_IAM:
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html">AWS::IAM::Group</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html">AWS::IAM::InstanceProfile</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html">AWS::IAM::Policy</a>,
* and
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html">AWS::IAM::Role</a>.
* If the application contains IAM resources, you can specify either
* CAPABILITY_IAM
or CAPABILITY_NAMED_IAM. If the application contains IAM
* resources
with custom names, you must specify CAPABILITY_NAMED_IAM.</p><p>The
* following resources require you to specify CAPABILITY_RESOURCE_POLICY:
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html">AWS::Lambda::Permission</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html">AWS::IAM:Policy</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html">AWS::ApplicationAutoScaling::ScalingPolicy</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-policy.html">AWS::S3::BucketPolicy</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-policy.html">AWS::SQS::QueuePolicy</a>,
* and
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-policy.html">AWS::SNS::TopicPolicy</a>.</p><p>Applications
* that contain one or more nested applications require you to specify
* CAPABILITY_AUTO_EXPAND.</p><p>If your application template contains any of the
* above resources, we recommend that you review
all permissions associated with
* the application before deploying. If you don't specify
this parameter for an
* application that requires capabilities, the call will fail.</p>
*/
inline const Aws::Vector<Capability>& GetRequiredCapabilities() const{ return m_requiredCapabilities; }
/**
* <p>A list of values that you must specify before you can deploy certain
* applications.
Some applications might include resources that can affect
* permissions in your AWS
account, for example, by creating new AWS Identity and
* Access Management (IAM) users.
For those applications, you must explicitly
* acknowledge their capabilities by
specifying this parameter.</p><p>The only
* valid values are CAPABILITY_IAM, CAPABILITY_NAMED_IAM,
* CAPABILITY_RESOURCE_POLICY, and CAPABILITY_AUTO_EXPAND.</p><p>The following
* resources require you to specify CAPABILITY_IAM or
CAPABILITY_NAMED_IAM:
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html">AWS::IAM::Group</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html">AWS::IAM::InstanceProfile</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html">AWS::IAM::Policy</a>,
* and
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html">AWS::IAM::Role</a>.
* If the application contains IAM resources, you can specify either
* CAPABILITY_IAM
or CAPABILITY_NAMED_IAM. If the application contains IAM
* resources
with custom names, you must specify CAPABILITY_NAMED_IAM.</p><p>The
* following resources require you to specify CAPABILITY_RESOURCE_POLICY:
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html">AWS::Lambda::Permission</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html">AWS::IAM:Policy</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html">AWS::ApplicationAutoScaling::ScalingPolicy</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-policy.html">AWS::S3::BucketPolicy</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-policy.html">AWS::SQS::QueuePolicy</a>,
* and
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-policy.html">AWS::SNS::TopicPolicy</a>.</p><p>Applications
* that contain one or more nested applications require you to specify
* CAPABILITY_AUTO_EXPAND.</p><p>If your application template contains any of the
* above resources, we recommend that you review
all permissions associated with
* the application before deploying. If you don't specify
this parameter for an
* application that requires capabilities, the call will fail.</p>
*/
inline void SetRequiredCapabilities(const Aws::Vector<Capability>& value) { m_requiredCapabilities = value; }
/**
* <p>A list of values that you must specify before you can deploy certain
* applications.
Some applications might include resources that can affect
* permissions in your AWS
account, for example, by creating new AWS Identity and
* Access Management (IAM) users.
For those applications, you must explicitly
* acknowledge their capabilities by
specifying this parameter.</p><p>The only
* valid values are CAPABILITY_IAM, CAPABILITY_NAMED_IAM,
* CAPABILITY_RESOURCE_POLICY, and CAPABILITY_AUTO_EXPAND.</p><p>The following
* resources require you to specify CAPABILITY_IAM or
CAPABILITY_NAMED_IAM:
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html">AWS::IAM::Group</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html">AWS::IAM::InstanceProfile</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html">AWS::IAM::Policy</a>,
* and
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html">AWS::IAM::Role</a>.
* If the application contains IAM resources, you can specify either
* CAPABILITY_IAM
or CAPABILITY_NAMED_IAM. If the application contains IAM
* resources
with custom names, you must specify CAPABILITY_NAMED_IAM.</p><p>The
* following resources require you to specify CAPABILITY_RESOURCE_POLICY:
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html">AWS::Lambda::Permission</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html">AWS::IAM:Policy</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html">AWS::ApplicationAutoScaling::ScalingPolicy</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-policy.html">AWS::S3::BucketPolicy</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-policy.html">AWS::SQS::QueuePolicy</a>,
* and
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-policy.html">AWS::SNS::TopicPolicy</a>.</p><p>Applications
* that contain one or more nested applications require you to specify
* CAPABILITY_AUTO_EXPAND.</p><p>If your application template contains any of the
* above resources, we recommend that you review
all permissions associated with
* the application before deploying. If you don't specify
this parameter for an
* application that requires capabilities, the call will fail.</p>
*/
inline void SetRequiredCapabilities(Aws::Vector<Capability>&& value) { m_requiredCapabilities = std::move(value); }
/**
* <p>A list of values that you must specify before you can deploy certain
* applications.
Some applications might include resources that can affect
* permissions in your AWS
account, for example, by creating new AWS Identity and
* Access Management (IAM) users.
For those applications, you must explicitly
* acknowledge their capabilities by
specifying this parameter.</p><p>The only
* valid values are CAPABILITY_IAM, CAPABILITY_NAMED_IAM,
* CAPABILITY_RESOURCE_POLICY, and CAPABILITY_AUTO_EXPAND.</p><p>The following
* resources require you to specify CAPABILITY_IAM or
CAPABILITY_NAMED_IAM:
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html">AWS::IAM::Group</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html">AWS::IAM::InstanceProfile</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html">AWS::IAM::Policy</a>,
* and
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html">AWS::IAM::Role</a>.
* If the application contains IAM resources, you can specify either
* CAPABILITY_IAM
or CAPABILITY_NAMED_IAM. If the application contains IAM
* resources
with custom names, you must specify CAPABILITY_NAMED_IAM.</p><p>The
* following resources require you to specify CAPABILITY_RESOURCE_POLICY:
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html">AWS::Lambda::Permission</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html">AWS::IAM:Policy</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html">AWS::ApplicationAutoScaling::ScalingPolicy</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-policy.html">AWS::S3::BucketPolicy</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-policy.html">AWS::SQS::QueuePolicy</a>,
* and
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-policy.html">AWS::SNS::TopicPolicy</a>.</p><p>Applications
* that contain one or more nested applications require you to specify
* CAPABILITY_AUTO_EXPAND.</p><p>If your application template contains any of the
* above resources, we recommend that you review
all permissions associated with
* the application before deploying. If you don't specify
this parameter for an
* application that requires capabilities, the call will fail.</p>
*/
inline CreateApplicationVersionResult& WithRequiredCapabilities(const Aws::Vector<Capability>& value) { SetRequiredCapabilities(value); return *this;}
/**
* <p>A list of values that you must specify before you can deploy certain
* applications.
Some applications might include resources that can affect
* permissions in your AWS
account, for example, by creating new AWS Identity and
* Access Management (IAM) users.
For those applications, you must explicitly
* acknowledge their capabilities by
specifying this parameter.</p><p>The only
* valid values are CAPABILITY_IAM, CAPABILITY_NAMED_IAM,
* CAPABILITY_RESOURCE_POLICY, and CAPABILITY_AUTO_EXPAND.</p><p>The following
* resources require you to specify CAPABILITY_IAM or
CAPABILITY_NAMED_IAM:
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html">AWS::IAM::Group</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html">AWS::IAM::InstanceProfile</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html">AWS::IAM::Policy</a>,
* and
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html">AWS::IAM::Role</a>.
* If the application contains IAM resources, you can specify either
* CAPABILITY_IAM
or CAPABILITY_NAMED_IAM. If the application contains IAM
* resources
with custom names, you must specify CAPABILITY_NAMED_IAM.</p><p>The
* following resources require you to specify CAPABILITY_RESOURCE_POLICY:
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html">AWS::Lambda::Permission</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html">AWS::IAM:Policy</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html">AWS::ApplicationAutoScaling::ScalingPolicy</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-policy.html">AWS::S3::BucketPolicy</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-policy.html">AWS::SQS::QueuePolicy</a>,
* and
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-policy.html">AWS::SNS::TopicPolicy</a>.</p><p>Applications
* that contain one or more nested applications require you to specify
* CAPABILITY_AUTO_EXPAND.</p><p>If your application template contains any of the
* above resources, we recommend that you review
all permissions associated with
* the application before deploying. If you don't specify
this parameter for an
* application that requires capabilities, the call will fail.</p>
*/
inline CreateApplicationVersionResult& WithRequiredCapabilities(Aws::Vector<Capability>&& value) { SetRequiredCapabilities(std::move(value)); return *this;}
/**
* <p>A list of values that you must specify before you can deploy certain
* applications.
Some applications might include resources that can affect
* permissions in your AWS
account, for example, by creating new AWS Identity and
* Access Management (IAM) users.
For those applications, you must explicitly
* acknowledge their capabilities by
specifying this parameter.</p><p>The only
* valid values are CAPABILITY_IAM, CAPABILITY_NAMED_IAM,
* CAPABILITY_RESOURCE_POLICY, and CAPABILITY_AUTO_EXPAND.</p><p>The following
* resources require you to specify CAPABILITY_IAM or
CAPABILITY_NAMED_IAM:
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html">AWS::IAM::Group</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html">AWS::IAM::InstanceProfile</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html">AWS::IAM::Policy</a>,
* and
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html">AWS::IAM::Role</a>.
* If the application contains IAM resources, you can specify either
* CAPABILITY_IAM
or CAPABILITY_NAMED_IAM. If the application contains IAM
* resources
with custom names, you must specify CAPABILITY_NAMED_IAM.</p><p>The
* following resources require you to specify CAPABILITY_RESOURCE_POLICY:
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html">AWS::Lambda::Permission</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html">AWS::IAM:Policy</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html">AWS::ApplicationAutoScaling::ScalingPolicy</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-policy.html">AWS::S3::BucketPolicy</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-policy.html">AWS::SQS::QueuePolicy</a>,
* and
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-policy.html">AWS::SNS::TopicPolicy</a>.</p><p>Applications
* that contain one or more nested applications require you to specify
* CAPABILITY_AUTO_EXPAND.</p><p>If your application template contains any of the
* above resources, we recommend that you review
all permissions associated with
* the application before deploying. If you don't specify
this parameter for an
* application that requires capabilities, the call will fail.</p>
*/
inline CreateApplicationVersionResult& AddRequiredCapabilities(const Capability& value) { m_requiredCapabilities.push_back(value); return *this; }
/**
* <p>A list of values that you must specify before you can deploy certain
* applications.
Some applications might include resources that can affect
* permissions in your AWS
account, for example, by creating new AWS Identity and
* Access Management (IAM) users.
For those applications, you must explicitly
* acknowledge their capabilities by
specifying this parameter.</p><p>The only
* valid values are CAPABILITY_IAM, CAPABILITY_NAMED_IAM,
* CAPABILITY_RESOURCE_POLICY, and CAPABILITY_AUTO_EXPAND.</p><p>The following
* resources require you to specify CAPABILITY_IAM or
CAPABILITY_NAMED_IAM:
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html">AWS::IAM::Group</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html">AWS::IAM::InstanceProfile</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html">AWS::IAM::Policy</a>,
* and
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html">AWS::IAM::Role</a>.
* If the application contains IAM resources, you can specify either
* CAPABILITY_IAM
or CAPABILITY_NAMED_IAM. If the application contains IAM
* resources
with custom names, you must specify CAPABILITY_NAMED_IAM.</p><p>The
* following resources require you to specify CAPABILITY_RESOURCE_POLICY:
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html">AWS::Lambda::Permission</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html">AWS::IAM:Policy</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html">AWS::ApplicationAutoScaling::ScalingPolicy</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-policy.html">AWS::S3::BucketPolicy</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-policy.html">AWS::SQS::QueuePolicy</a>,
* and
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-policy.html">AWS::SNS::TopicPolicy</a>.</p><p>Applications
* that contain one or more nested applications require you to specify
* CAPABILITY_AUTO_EXPAND.</p><p>If your application template contains any of the
* above resources, we recommend that you review
all permissions associated with
* the application before deploying. If you don't specify
this parameter for an
* application that requires capabilities, the call will fail.</p>
*/
inline CreateApplicationVersionResult& AddRequiredCapabilities(Capability&& value) { m_requiredCapabilities.push_back(std::move(value)); return *this; }
/**
* <p>Whether all of the AWS resources contained in this application are supported
* in the region
in which it is being retrieved.</p>
*/
inline bool GetResourcesSupported() const{ return m_resourcesSupported; }
/**
* <p>Whether all of the AWS resources contained in this application are supported
* in the region
in which it is being retrieved.</p>
*/
inline void SetResourcesSupported(bool value) { m_resourcesSupported = value; }
/**
* <p>Whether all of the AWS resources contained in this application are supported
* in the region
in which it is being retrieved.</p>
*/
inline CreateApplicationVersionResult& WithResourcesSupported(bool value) { SetResourcesSupported(value); return *this;}
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline const Aws::String& GetSemanticVersion() const{ return m_semanticVersion; }
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline void SetSemanticVersion(const Aws::String& value) { m_semanticVersion = value; }
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline void SetSemanticVersion(Aws::String&& value) { m_semanticVersion = std::move(value); }
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline void SetSemanticVersion(const char* value) { m_semanticVersion.assign(value); }
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline CreateApplicationVersionResult& WithSemanticVersion(const Aws::String& value) { SetSemanticVersion(value); return *this;}
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline CreateApplicationVersionResult& WithSemanticVersion(Aws::String&& value) { SetSemanticVersion(std::move(value)); return *this;}
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline CreateApplicationVersionResult& WithSemanticVersion(const char* value) { SetSemanticVersion(value); return *this;}
/**
* <p>A link to the S3 object that contains the ZIP archive of the source code for
* this version of your application.</p><p>Maximum size 50 MB</p>
*/
inline const Aws::String& GetSourceCodeArchiveUrl() const{ return m_sourceCodeArchiveUrl; }
/**
* <p>A link to the S3 object that contains the ZIP archive of the source code for
* this version of your application.</p><p>Maximum size 50 MB</p>
*/
inline void SetSourceCodeArchiveUrl(const Aws::String& value) { m_sourceCodeArchiveUrl = value; }
/**
* <p>A link to the S3 object that contains the ZIP archive of the source code for
* this version of your application.</p><p>Maximum size 50 MB</p>
*/
inline void SetSourceCodeArchiveUrl(Aws::String&& value) { m_sourceCodeArchiveUrl = std::move(value); }
/**
* <p>A link to the S3 object that contains the ZIP archive of the source code for
* this version of your application.</p><p>Maximum size 50 MB</p>
*/
inline void SetSourceCodeArchiveUrl(const char* value) { m_sourceCodeArchiveUrl.assign(value); }
/**
* <p>A link to the S3 object that contains the ZIP archive of the source code for
* this version of your application.</p><p>Maximum size 50 MB</p>
*/
inline CreateApplicationVersionResult& WithSourceCodeArchiveUrl(const Aws::String& value) { SetSourceCodeArchiveUrl(value); return *this;}
/**
* <p>A link to the S3 object that contains the ZIP archive of the source code for
* this version of your application.</p><p>Maximum size 50 MB</p>
*/
inline CreateApplicationVersionResult& WithSourceCodeArchiveUrl(Aws::String&& value) { SetSourceCodeArchiveUrl(std::move(value)); return *this;}
/**
* <p>A link to the S3 object that contains the ZIP archive of the source code for
* this version of your application.</p><p>Maximum size 50 MB</p>
*/
inline CreateApplicationVersionResult& WithSourceCodeArchiveUrl(const char* value) { SetSourceCodeArchiveUrl(value); return *this;}
/**
* <p>A link to a public repository for the source code of your application, for
* example the URL of a specific GitHub commit.</p>
*/
inline const Aws::String& GetSourceCodeUrl() const{ return m_sourceCodeUrl; }
/**
* <p>A link to a public repository for the source code of your application, for
* example the URL of a specific GitHub commit.</p>
*/
inline void SetSourceCodeUrl(const Aws::String& value) { m_sourceCodeUrl = value; }
/**
* <p>A link to a public repository for the source code of your application, for
* example the URL of a specific GitHub commit.</p>
*/
inline void SetSourceCodeUrl(Aws::String&& value) { m_sourceCodeUrl = std::move(value); }
/**
* <p>A link to a public repository for the source code of your application, for
* example the URL of a specific GitHub commit.</p>
*/
inline void SetSourceCodeUrl(const char* value) { m_sourceCodeUrl.assign(value); }
/**
* <p>A link to a public repository for the source code of your application, for
* example the URL of a specific GitHub commit.</p>
*/
inline CreateApplicationVersionResult& WithSourceCodeUrl(const Aws::String& value) { SetSourceCodeUrl(value); return *this;}
/**
* <p>A link to a public repository for the source code of your application, for
* example the URL of a specific GitHub commit.</p>
*/
inline CreateApplicationVersionResult& WithSourceCodeUrl(Aws::String&& value) { SetSourceCodeUrl(std::move(value)); return *this;}
/**
* <p>A link to a public repository for the source code of your application, for
* example the URL of a specific GitHub commit.</p>
*/
inline CreateApplicationVersionResult& WithSourceCodeUrl(const char* value) { SetSourceCodeUrl(value); return *this;}
/**
* <p>A link to the packaged AWS SAM template of your application.</p>
*/
inline const Aws::String& GetTemplateUrl() const{ return m_templateUrl; }
/**
* <p>A link to the packaged AWS SAM template of your application.</p>
*/
inline void SetTemplateUrl(const Aws::String& value) { m_templateUrl = value; }
/**
* <p>A link to the packaged AWS SAM template of your application.</p>
*/
inline void SetTemplateUrl(Aws::String&& value) { m_templateUrl = std::move(value); }
/**
* <p>A link to the packaged AWS SAM template of your application.</p>
*/
inline void SetTemplateUrl(const char* value) { m_templateUrl.assign(value); }
/**
* <p>A link to the packaged AWS SAM template of your application.</p>
*/
inline CreateApplicationVersionResult& WithTemplateUrl(const Aws::String& value) { SetTemplateUrl(value); return *this;}
/**
* <p>A link to the packaged AWS SAM template of your application.</p>
*/
inline CreateApplicationVersionResult& WithTemplateUrl(Aws::String&& value) { SetTemplateUrl(std::move(value)); return *this;}
/**
* <p>A link to the packaged AWS SAM template of your application.</p>
*/
inline CreateApplicationVersionResult& WithTemplateUrl(const char* value) { SetTemplateUrl(value); return *this;}
private:
Aws::String m_applicationId;
Aws::String m_creationTime;
Aws::Vector<ParameterDefinition> m_parameterDefinitions;
Aws::Vector<Capability> m_requiredCapabilities;
bool m_resourcesSupported;
Aws::String m_semanticVersion;
Aws::String m_sourceCodeArchiveUrl;
Aws::String m_sourceCodeUrl;
Aws::String m_templateUrl;
};
} // namespace Model
} // namespace ServerlessApplicationRepository
} // namespace Aws

View File

@@ -0,0 +1,219 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/serverlessrepo/ServerlessApplicationRepository_EXPORTS.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 ServerlessApplicationRepository
{
namespace Model
{
class AWS_SERVERLESSAPPLICATIONREPOSITORY_API CreateCloudFormationChangeSetResult
{
public:
CreateCloudFormationChangeSetResult();
CreateCloudFormationChangeSetResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
CreateCloudFormationChangeSetResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline const Aws::String& GetApplicationId() const{ return m_applicationId; }
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline void SetApplicationId(const Aws::String& value) { m_applicationId = value; }
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline void SetApplicationId(Aws::String&& value) { m_applicationId = std::move(value); }
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline void SetApplicationId(const char* value) { m_applicationId.assign(value); }
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline CreateCloudFormationChangeSetResult& WithApplicationId(const Aws::String& value) { SetApplicationId(value); return *this;}
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline CreateCloudFormationChangeSetResult& WithApplicationId(Aws::String&& value) { SetApplicationId(std::move(value)); return *this;}
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline CreateCloudFormationChangeSetResult& WithApplicationId(const char* value) { SetApplicationId(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the change set.</p><p>Length constraints:
* Minimum length of 1.</p><p>Pattern: ARN:[-a-zA-Z0-9:/]*</p>
*/
inline const Aws::String& GetChangeSetId() const{ return m_changeSetId; }
/**
* <p>The Amazon Resource Name (ARN) of the change set.</p><p>Length constraints:
* Minimum length of 1.</p><p>Pattern: ARN:[-a-zA-Z0-9:/]*</p>
*/
inline void SetChangeSetId(const Aws::String& value) { m_changeSetId = value; }
/**
* <p>The Amazon Resource Name (ARN) of the change set.</p><p>Length constraints:
* Minimum length of 1.</p><p>Pattern: ARN:[-a-zA-Z0-9:/]*</p>
*/
inline void SetChangeSetId(Aws::String&& value) { m_changeSetId = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the change set.</p><p>Length constraints:
* Minimum length of 1.</p><p>Pattern: ARN:[-a-zA-Z0-9:/]*</p>
*/
inline void SetChangeSetId(const char* value) { m_changeSetId.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the change set.</p><p>Length constraints:
* Minimum length of 1.</p><p>Pattern: ARN:[-a-zA-Z0-9:/]*</p>
*/
inline CreateCloudFormationChangeSetResult& WithChangeSetId(const Aws::String& value) { SetChangeSetId(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the change set.</p><p>Length constraints:
* Minimum length of 1.</p><p>Pattern: ARN:[-a-zA-Z0-9:/]*</p>
*/
inline CreateCloudFormationChangeSetResult& WithChangeSetId(Aws::String&& value) { SetChangeSetId(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the change set.</p><p>Length constraints:
* Minimum length of 1.</p><p>Pattern: ARN:[-a-zA-Z0-9:/]*</p>
*/
inline CreateCloudFormationChangeSetResult& WithChangeSetId(const char* value) { SetChangeSetId(value); return *this;}
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline const Aws::String& GetSemanticVersion() const{ return m_semanticVersion; }
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline void SetSemanticVersion(const Aws::String& value) { m_semanticVersion = value; }
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline void SetSemanticVersion(Aws::String&& value) { m_semanticVersion = std::move(value); }
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline void SetSemanticVersion(const char* value) { m_semanticVersion.assign(value); }
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline CreateCloudFormationChangeSetResult& WithSemanticVersion(const Aws::String& value) { SetSemanticVersion(value); return *this;}
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline CreateCloudFormationChangeSetResult& WithSemanticVersion(Aws::String&& value) { SetSemanticVersion(std::move(value)); return *this;}
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline CreateCloudFormationChangeSetResult& WithSemanticVersion(const char* value) { SetSemanticVersion(value); return *this;}
/**
* <p>The unique ID of the stack.</p>
*/
inline const Aws::String& GetStackId() const{ return m_stackId; }
/**
* <p>The unique ID of the stack.</p>
*/
inline void SetStackId(const Aws::String& value) { m_stackId = value; }
/**
* <p>The unique ID of the stack.</p>
*/
inline void SetStackId(Aws::String&& value) { m_stackId = std::move(value); }
/**
* <p>The unique ID of the stack.</p>
*/
inline void SetStackId(const char* value) { m_stackId.assign(value); }
/**
* <p>The unique ID of the stack.</p>
*/
inline CreateCloudFormationChangeSetResult& WithStackId(const Aws::String& value) { SetStackId(value); return *this;}
/**
* <p>The unique ID of the stack.</p>
*/
inline CreateCloudFormationChangeSetResult& WithStackId(Aws::String&& value) { SetStackId(std::move(value)); return *this;}
/**
* <p>The unique ID of the stack.</p>
*/
inline CreateCloudFormationChangeSetResult& WithStackId(const char* value) { SetStackId(value); return *this;}
private:
Aws::String m_applicationId;
Aws::String m_changeSetId;
Aws::String m_semanticVersion;
Aws::String m_stackId;
};
} // namespace Model
} // namespace ServerlessApplicationRepository
} // namespace Aws

View File

@@ -0,0 +1,151 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/serverlessrepo/ServerlessApplicationRepository_EXPORTS.h>
#include <aws/serverlessrepo/ServerlessApplicationRepositoryRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace ServerlessApplicationRepository
{
namespace Model
{
/**
*/
class AWS_SERVERLESSAPPLICATIONREPOSITORY_API CreateCloudFormationTemplateRequest : public ServerlessApplicationRepositoryRequest
{
public:
CreateCloudFormationTemplateRequest();
// 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 "CreateCloudFormationTemplate"; }
Aws::String SerializePayload() const override;
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline const Aws::String& GetApplicationId() const{ return m_applicationId; }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline bool ApplicationIdHasBeenSet() const { return m_applicationIdHasBeenSet; }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline void SetApplicationId(const Aws::String& value) { m_applicationIdHasBeenSet = true; m_applicationId = value; }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline void SetApplicationId(Aws::String&& value) { m_applicationIdHasBeenSet = true; m_applicationId = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline void SetApplicationId(const char* value) { m_applicationIdHasBeenSet = true; m_applicationId.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline CreateCloudFormationTemplateRequest& WithApplicationId(const Aws::String& value) { SetApplicationId(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline CreateCloudFormationTemplateRequest& WithApplicationId(Aws::String&& value) { SetApplicationId(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline CreateCloudFormationTemplateRequest& WithApplicationId(const char* value) { SetApplicationId(value); return *this;}
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline const Aws::String& GetSemanticVersion() const{ return m_semanticVersion; }
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline bool SemanticVersionHasBeenSet() const { return m_semanticVersionHasBeenSet; }
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline void SetSemanticVersion(const Aws::String& value) { m_semanticVersionHasBeenSet = true; m_semanticVersion = value; }
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline void SetSemanticVersion(Aws::String&& value) { m_semanticVersionHasBeenSet = true; m_semanticVersion = std::move(value); }
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline void SetSemanticVersion(const char* value) { m_semanticVersionHasBeenSet = true; m_semanticVersion.assign(value); }
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline CreateCloudFormationTemplateRequest& WithSemanticVersion(const Aws::String& value) { SetSemanticVersion(value); return *this;}
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline CreateCloudFormationTemplateRequest& WithSemanticVersion(Aws::String&& value) { SetSemanticVersion(std::move(value)); return *this;}
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline CreateCloudFormationTemplateRequest& WithSemanticVersion(const char* value) { SetSemanticVersion(value); return *this;}
private:
Aws::String m_applicationId;
bool m_applicationIdHasBeenSet;
Aws::String m_semanticVersion;
bool m_semanticVersionHasBeenSet;
};
} // namespace Model
} // namespace ServerlessApplicationRepository
} // namespace Aws

View File

@@ -0,0 +1,362 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/serverlessrepo/ServerlessApplicationRepository_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/serverlessrepo/model/Status.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace ServerlessApplicationRepository
{
namespace Model
{
class AWS_SERVERLESSAPPLICATIONREPOSITORY_API CreateCloudFormationTemplateResult
{
public:
CreateCloudFormationTemplateResult();
CreateCloudFormationTemplateResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
CreateCloudFormationTemplateResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline const Aws::String& GetApplicationId() const{ return m_applicationId; }
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline void SetApplicationId(const Aws::String& value) { m_applicationId = value; }
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline void SetApplicationId(Aws::String&& value) { m_applicationId = std::move(value); }
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline void SetApplicationId(const char* value) { m_applicationId.assign(value); }
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline CreateCloudFormationTemplateResult& WithApplicationId(const Aws::String& value) { SetApplicationId(value); return *this;}
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline CreateCloudFormationTemplateResult& WithApplicationId(Aws::String&& value) { SetApplicationId(std::move(value)); return *this;}
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline CreateCloudFormationTemplateResult& WithApplicationId(const char* value) { SetApplicationId(value); return *this;}
/**
* <p>The date and time this resource was created.</p>
*/
inline const Aws::String& GetCreationTime() const{ return m_creationTime; }
/**
* <p>The date and time this resource was created.</p>
*/
inline void SetCreationTime(const Aws::String& value) { m_creationTime = value; }
/**
* <p>The date and time this resource was created.</p>
*/
inline void SetCreationTime(Aws::String&& value) { m_creationTime = std::move(value); }
/**
* <p>The date and time this resource was created.</p>
*/
inline void SetCreationTime(const char* value) { m_creationTime.assign(value); }
/**
* <p>The date and time this resource was created.</p>
*/
inline CreateCloudFormationTemplateResult& WithCreationTime(const Aws::String& value) { SetCreationTime(value); return *this;}
/**
* <p>The date and time this resource was created.</p>
*/
inline CreateCloudFormationTemplateResult& WithCreationTime(Aws::String&& value) { SetCreationTime(std::move(value)); return *this;}
/**
* <p>The date and time this resource was created.</p>
*/
inline CreateCloudFormationTemplateResult& WithCreationTime(const char* value) { SetCreationTime(value); return *this;}
/**
* <p>The date and time this template expires. Templates
expire 1 hour after
* creation.</p>
*/
inline const Aws::String& GetExpirationTime() const{ return m_expirationTime; }
/**
* <p>The date and time this template expires. Templates
expire 1 hour after
* creation.</p>
*/
inline void SetExpirationTime(const Aws::String& value) { m_expirationTime = value; }
/**
* <p>The date and time this template expires. Templates
expire 1 hour after
* creation.</p>
*/
inline void SetExpirationTime(Aws::String&& value) { m_expirationTime = std::move(value); }
/**
* <p>The date and time this template expires. Templates
expire 1 hour after
* creation.</p>
*/
inline void SetExpirationTime(const char* value) { m_expirationTime.assign(value); }
/**
* <p>The date and time this template expires. Templates
expire 1 hour after
* creation.</p>
*/
inline CreateCloudFormationTemplateResult& WithExpirationTime(const Aws::String& value) { SetExpirationTime(value); return *this;}
/**
* <p>The date and time this template expires. Templates
expire 1 hour after
* creation.</p>
*/
inline CreateCloudFormationTemplateResult& WithExpirationTime(Aws::String&& value) { SetExpirationTime(std::move(value)); return *this;}
/**
* <p>The date and time this template expires. Templates
expire 1 hour after
* creation.</p>
*/
inline CreateCloudFormationTemplateResult& WithExpirationTime(const char* value) { SetExpirationTime(value); return *this;}
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline const Aws::String& GetSemanticVersion() const{ return m_semanticVersion; }
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline void SetSemanticVersion(const Aws::String& value) { m_semanticVersion = value; }
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline void SetSemanticVersion(Aws::String&& value) { m_semanticVersion = std::move(value); }
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline void SetSemanticVersion(const char* value) { m_semanticVersion.assign(value); }
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline CreateCloudFormationTemplateResult& WithSemanticVersion(const Aws::String& value) { SetSemanticVersion(value); return *this;}
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline CreateCloudFormationTemplateResult& WithSemanticVersion(Aws::String&& value) { SetSemanticVersion(std::move(value)); return *this;}
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline CreateCloudFormationTemplateResult& WithSemanticVersion(const char* value) { SetSemanticVersion(value); return *this;}
/**
* <p>Status of the template creation workflow.</p><p>Possible values: PREPARING |
* ACTIVE | EXPIRED
</p>
*/
inline const Status& GetStatus() const{ return m_status; }
/**
* <p>Status of the template creation workflow.</p><p>Possible values: PREPARING |
* ACTIVE | EXPIRED
</p>
*/
inline void SetStatus(const Status& value) { m_status = value; }
/**
* <p>Status of the template creation workflow.</p><p>Possible values: PREPARING |
* ACTIVE | EXPIRED
</p>
*/
inline void SetStatus(Status&& value) { m_status = std::move(value); }
/**
* <p>Status of the template creation workflow.</p><p>Possible values: PREPARING |
* ACTIVE | EXPIRED
</p>
*/
inline CreateCloudFormationTemplateResult& WithStatus(const Status& value) { SetStatus(value); return *this;}
/**
* <p>Status of the template creation workflow.</p><p>Possible values: PREPARING |
* ACTIVE | EXPIRED
</p>
*/
inline CreateCloudFormationTemplateResult& WithStatus(Status&& value) { SetStatus(std::move(value)); return *this;}
/**
* <p>The UUID returned by CreateCloudFormationTemplate.</p><p>Pattern:
* [0-9a-fA-F]{8}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{12}</p>
*/
inline const Aws::String& GetTemplateId() const{ return m_templateId; }
/**
* <p>The UUID returned by CreateCloudFormationTemplate.</p><p>Pattern:
* [0-9a-fA-F]{8}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{12}</p>
*/
inline void SetTemplateId(const Aws::String& value) { m_templateId = value; }
/**
* <p>The UUID returned by CreateCloudFormationTemplate.</p><p>Pattern:
* [0-9a-fA-F]{8}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{12}</p>
*/
inline void SetTemplateId(Aws::String&& value) { m_templateId = std::move(value); }
/**
* <p>The UUID returned by CreateCloudFormationTemplate.</p><p>Pattern:
* [0-9a-fA-F]{8}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{12}</p>
*/
inline void SetTemplateId(const char* value) { m_templateId.assign(value); }
/**
* <p>The UUID returned by CreateCloudFormationTemplate.</p><p>Pattern:
* [0-9a-fA-F]{8}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{12}</p>
*/
inline CreateCloudFormationTemplateResult& WithTemplateId(const Aws::String& value) { SetTemplateId(value); return *this;}
/**
* <p>The UUID returned by CreateCloudFormationTemplate.</p><p>Pattern:
* [0-9a-fA-F]{8}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{12}</p>
*/
inline CreateCloudFormationTemplateResult& WithTemplateId(Aws::String&& value) { SetTemplateId(std::move(value)); return *this;}
/**
* <p>The UUID returned by CreateCloudFormationTemplate.</p><p>Pattern:
* [0-9a-fA-F]{8}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{12}</p>
*/
inline CreateCloudFormationTemplateResult& WithTemplateId(const char* value) { SetTemplateId(value); return *this;}
/**
* <p>A link to the template that can be used to deploy the application using
AWS
* CloudFormation.</p>
*/
inline const Aws::String& GetTemplateUrl() const{ return m_templateUrl; }
/**
* <p>A link to the template that can be used to deploy the application using
AWS
* CloudFormation.</p>
*/
inline void SetTemplateUrl(const Aws::String& value) { m_templateUrl = value; }
/**
* <p>A link to the template that can be used to deploy the application using
AWS
* CloudFormation.</p>
*/
inline void SetTemplateUrl(Aws::String&& value) { m_templateUrl = std::move(value); }
/**
* <p>A link to the template that can be used to deploy the application using
AWS
* CloudFormation.</p>
*/
inline void SetTemplateUrl(const char* value) { m_templateUrl.assign(value); }
/**
* <p>A link to the template that can be used to deploy the application using
AWS
* CloudFormation.</p>
*/
inline CreateCloudFormationTemplateResult& WithTemplateUrl(const Aws::String& value) { SetTemplateUrl(value); return *this;}
/**
* <p>A link to the template that can be used to deploy the application using
AWS
* CloudFormation.</p>
*/
inline CreateCloudFormationTemplateResult& WithTemplateUrl(Aws::String&& value) { SetTemplateUrl(std::move(value)); return *this;}
/**
* <p>A link to the template that can be used to deploy the application using
AWS
* CloudFormation.</p>
*/
inline CreateCloudFormationTemplateResult& WithTemplateUrl(const char* value) { SetTemplateUrl(value); return *this;}
private:
Aws::String m_applicationId;
Aws::String m_creationTime;
Aws::String m_expirationTime;
Aws::String m_semanticVersion;
Status m_status;
Aws::String m_templateId;
Aws::String m_templateUrl;
};
} // namespace Model
} // namespace ServerlessApplicationRepository
} // 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/serverlessrepo/ServerlessApplicationRepository_EXPORTS.h>
#include <aws/serverlessrepo/ServerlessApplicationRepositoryRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace ServerlessApplicationRepository
{
namespace Model
{
/**
*/
class AWS_SERVERLESSAPPLICATIONREPOSITORY_API DeleteApplicationRequest : public ServerlessApplicationRepositoryRequest
{
public:
DeleteApplicationRequest();
// 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 "DeleteApplication"; }
Aws::String SerializePayload() const override;
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline const Aws::String& GetApplicationId() const{ return m_applicationId; }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline bool ApplicationIdHasBeenSet() const { return m_applicationIdHasBeenSet; }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline void SetApplicationId(const Aws::String& value) { m_applicationIdHasBeenSet = true; m_applicationId = value; }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline void SetApplicationId(Aws::String&& value) { m_applicationIdHasBeenSet = true; m_applicationId = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline void SetApplicationId(const char* value) { m_applicationIdHasBeenSet = true; m_applicationId.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline DeleteApplicationRequest& WithApplicationId(const Aws::String& value) { SetApplicationId(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline DeleteApplicationRequest& WithApplicationId(Aws::String&& value) { SetApplicationId(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline DeleteApplicationRequest& WithApplicationId(const char* value) { SetApplicationId(value); return *this;}
private:
Aws::String m_applicationId;
bool m_applicationIdHasBeenSet;
};
} // namespace Model
} // namespace ServerlessApplicationRepository
} // namespace Aws

View File

@@ -0,0 +1,132 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/serverlessrepo/ServerlessApplicationRepository_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 ServerlessApplicationRepository
{
namespace Model
{
/**
* <p>The client is not authenticated.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/ForbiddenException">AWS
* API Reference</a></p>
*/
class AWS_SERVERLESSAPPLICATIONREPOSITORY_API ForbiddenException
{
public:
ForbiddenException();
ForbiddenException(Aws::Utils::Json::JsonView jsonValue);
ForbiddenException& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>403</p>
*/
inline const Aws::String& GetErrorCode() const{ return m_errorCode; }
/**
* <p>403</p>
*/
inline bool ErrorCodeHasBeenSet() const { return m_errorCodeHasBeenSet; }
/**
* <p>403</p>
*/
inline void SetErrorCode(const Aws::String& value) { m_errorCodeHasBeenSet = true; m_errorCode = value; }
/**
* <p>403</p>
*/
inline void SetErrorCode(Aws::String&& value) { m_errorCodeHasBeenSet = true; m_errorCode = std::move(value); }
/**
* <p>403</p>
*/
inline void SetErrorCode(const char* value) { m_errorCodeHasBeenSet = true; m_errorCode.assign(value); }
/**
* <p>403</p>
*/
inline ForbiddenException& WithErrorCode(const Aws::String& value) { SetErrorCode(value); return *this;}
/**
* <p>403</p>
*/
inline ForbiddenException& WithErrorCode(Aws::String&& value) { SetErrorCode(std::move(value)); return *this;}
/**
* <p>403</p>
*/
inline ForbiddenException& WithErrorCode(const char* value) { SetErrorCode(value); return *this;}
/**
* <p>The client is not authenticated.</p>
*/
inline const Aws::String& GetMessage() const{ return m_message; }
/**
* <p>The client is not authenticated.</p>
*/
inline bool MessageHasBeenSet() const { return m_messageHasBeenSet; }
/**
* <p>The client is not authenticated.</p>
*/
inline void SetMessage(const Aws::String& value) { m_messageHasBeenSet = true; m_message = value; }
/**
* <p>The client is not authenticated.</p>
*/
inline void SetMessage(Aws::String&& value) { m_messageHasBeenSet = true; m_message = std::move(value); }
/**
* <p>The client is not authenticated.</p>
*/
inline void SetMessage(const char* value) { m_messageHasBeenSet = true; m_message.assign(value); }
/**
* <p>The client is not authenticated.</p>
*/
inline ForbiddenException& WithMessage(const Aws::String& value) { SetMessage(value); return *this;}
/**
* <p>The client is not authenticated.</p>
*/
inline ForbiddenException& WithMessage(Aws::String&& value) { SetMessage(std::move(value)); return *this;}
/**
* <p>The client is not authenticated.</p>
*/
inline ForbiddenException& WithMessage(const char* value) { SetMessage(value); return *this;}
private:
Aws::String m_errorCode;
bool m_errorCodeHasBeenSet;
Aws::String m_message;
bool m_messageHasBeenSet;
};
} // namespace Model
} // namespace ServerlessApplicationRepository
} // 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/serverlessrepo/ServerlessApplicationRepository_EXPORTS.h>
#include <aws/serverlessrepo/ServerlessApplicationRepositoryRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace ServerlessApplicationRepository
{
namespace Model
{
/**
*/
class AWS_SERVERLESSAPPLICATIONREPOSITORY_API GetApplicationPolicyRequest : public ServerlessApplicationRepositoryRequest
{
public:
GetApplicationPolicyRequest();
// 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 "GetApplicationPolicy"; }
Aws::String SerializePayload() const override;
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline const Aws::String& GetApplicationId() const{ return m_applicationId; }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline bool ApplicationIdHasBeenSet() const { return m_applicationIdHasBeenSet; }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline void SetApplicationId(const Aws::String& value) { m_applicationIdHasBeenSet = true; m_applicationId = value; }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline void SetApplicationId(Aws::String&& value) { m_applicationIdHasBeenSet = true; m_applicationId = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline void SetApplicationId(const char* value) { m_applicationIdHasBeenSet = true; m_applicationId.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline GetApplicationPolicyRequest& WithApplicationId(const Aws::String& value) { SetApplicationId(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline GetApplicationPolicyRequest& WithApplicationId(Aws::String&& value) { SetApplicationId(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline GetApplicationPolicyRequest& WithApplicationId(const char* value) { SetApplicationId(value); return *this;}
private:
Aws::String m_applicationId;
bool m_applicationIdHasBeenSet;
};
} // namespace Model
} // namespace ServerlessApplicationRepository
} // namespace Aws

View File

@@ -0,0 +1,78 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/serverlessrepo/ServerlessApplicationRepository_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/serverlessrepo/model/ApplicationPolicyStatement.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace ServerlessApplicationRepository
{
namespace Model
{
class AWS_SERVERLESSAPPLICATIONREPOSITORY_API GetApplicationPolicyResult
{
public:
GetApplicationPolicyResult();
GetApplicationPolicyResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
GetApplicationPolicyResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>An array of policy statements applied to the application.</p>
*/
inline const Aws::Vector<ApplicationPolicyStatement>& GetStatements() const{ return m_statements; }
/**
* <p>An array of policy statements applied to the application.</p>
*/
inline void SetStatements(const Aws::Vector<ApplicationPolicyStatement>& value) { m_statements = value; }
/**
* <p>An array of policy statements applied to the application.</p>
*/
inline void SetStatements(Aws::Vector<ApplicationPolicyStatement>&& value) { m_statements = std::move(value); }
/**
* <p>An array of policy statements applied to the application.</p>
*/
inline GetApplicationPolicyResult& WithStatements(const Aws::Vector<ApplicationPolicyStatement>& value) { SetStatements(value); return *this;}
/**
* <p>An array of policy statements applied to the application.</p>
*/
inline GetApplicationPolicyResult& WithStatements(Aws::Vector<ApplicationPolicyStatement>&& value) { SetStatements(std::move(value)); return *this;}
/**
* <p>An array of policy statements applied to the application.</p>
*/
inline GetApplicationPolicyResult& AddStatements(const ApplicationPolicyStatement& value) { m_statements.push_back(value); return *this; }
/**
* <p>An array of policy statements applied to the application.</p>
*/
inline GetApplicationPolicyResult& AddStatements(ApplicationPolicyStatement&& value) { m_statements.push_back(std::move(value)); return *this; }
private:
Aws::Vector<ApplicationPolicyStatement> m_statements;
};
} // namespace Model
} // namespace ServerlessApplicationRepository
} // namespace Aws

View File

@@ -0,0 +1,133 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/serverlessrepo/ServerlessApplicationRepository_EXPORTS.h>
#include <aws/serverlessrepo/ServerlessApplicationRepositoryRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Http
{
class URI;
} //namespace Http
namespace ServerlessApplicationRepository
{
namespace Model
{
/**
*/
class AWS_SERVERLESSAPPLICATIONREPOSITORY_API GetApplicationRequest : public ServerlessApplicationRepositoryRequest
{
public:
GetApplicationRequest();
// 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 "GetApplication"; }
Aws::String SerializePayload() const override;
void AddQueryStringParameters(Aws::Http::URI& uri) const override;
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline const Aws::String& GetApplicationId() const{ return m_applicationId; }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline bool ApplicationIdHasBeenSet() const { return m_applicationIdHasBeenSet; }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline void SetApplicationId(const Aws::String& value) { m_applicationIdHasBeenSet = true; m_applicationId = value; }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline void SetApplicationId(Aws::String&& value) { m_applicationIdHasBeenSet = true; m_applicationId = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline void SetApplicationId(const char* value) { m_applicationIdHasBeenSet = true; m_applicationId.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline GetApplicationRequest& WithApplicationId(const Aws::String& value) { SetApplicationId(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline GetApplicationRequest& WithApplicationId(Aws::String&& value) { SetApplicationId(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline GetApplicationRequest& WithApplicationId(const char* value) { SetApplicationId(value); return *this;}
/**
* <p>The semantic version of the application to get.</p>
*/
inline const Aws::String& GetSemanticVersion() const{ return m_semanticVersion; }
/**
* <p>The semantic version of the application to get.</p>
*/
inline bool SemanticVersionHasBeenSet() const { return m_semanticVersionHasBeenSet; }
/**
* <p>The semantic version of the application to get.</p>
*/
inline void SetSemanticVersion(const Aws::String& value) { m_semanticVersionHasBeenSet = true; m_semanticVersion = value; }
/**
* <p>The semantic version of the application to get.</p>
*/
inline void SetSemanticVersion(Aws::String&& value) { m_semanticVersionHasBeenSet = true; m_semanticVersion = std::move(value); }
/**
* <p>The semantic version of the application to get.</p>
*/
inline void SetSemanticVersion(const char* value) { m_semanticVersionHasBeenSet = true; m_semanticVersion.assign(value); }
/**
* <p>The semantic version of the application to get.</p>
*/
inline GetApplicationRequest& WithSemanticVersion(const Aws::String& value) { SetSemanticVersion(value); return *this;}
/**
* <p>The semantic version of the application to get.</p>
*/
inline GetApplicationRequest& WithSemanticVersion(Aws::String&& value) { SetSemanticVersion(std::move(value)); return *this;}
/**
* <p>The semantic version of the application to get.</p>
*/
inline GetApplicationRequest& WithSemanticVersion(const char* value) { SetSemanticVersion(value); return *this;}
private:
Aws::String m_applicationId;
bool m_applicationIdHasBeenSet;
Aws::String m_semanticVersion;
bool m_semanticVersionHasBeenSet;
};
} // namespace Model
} // namespace ServerlessApplicationRepository
} // namespace Aws

View File

@@ -0,0 +1,584 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/serverlessrepo/ServerlessApplicationRepository_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/serverlessrepo/model/Version.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace ServerlessApplicationRepository
{
namespace Model
{
class AWS_SERVERLESSAPPLICATIONREPOSITORY_API GetApplicationResult
{
public:
GetApplicationResult();
GetApplicationResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
GetApplicationResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline const Aws::String& GetApplicationId() const{ return m_applicationId; }
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline void SetApplicationId(const Aws::String& value) { m_applicationId = value; }
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline void SetApplicationId(Aws::String&& value) { m_applicationId = std::move(value); }
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline void SetApplicationId(const char* value) { m_applicationId.assign(value); }
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline GetApplicationResult& WithApplicationId(const Aws::String& value) { SetApplicationId(value); return *this;}
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline GetApplicationResult& WithApplicationId(Aws::String&& value) { SetApplicationId(std::move(value)); return *this;}
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline GetApplicationResult& WithApplicationId(const char* value) { SetApplicationId(value); return *this;}
/**
* <p>The name of the author publishing the app.</p><p>Minimum length=1. Maximum
* length=127.</p><p>Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";</p>
*/
inline const Aws::String& GetAuthor() const{ return m_author; }
/**
* <p>The name of the author publishing the app.</p><p>Minimum length=1. Maximum
* length=127.</p><p>Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";</p>
*/
inline void SetAuthor(const Aws::String& value) { m_author = value; }
/**
* <p>The name of the author publishing the app.</p><p>Minimum length=1. Maximum
* length=127.</p><p>Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";</p>
*/
inline void SetAuthor(Aws::String&& value) { m_author = std::move(value); }
/**
* <p>The name of the author publishing the app.</p><p>Minimum length=1. Maximum
* length=127.</p><p>Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";</p>
*/
inline void SetAuthor(const char* value) { m_author.assign(value); }
/**
* <p>The name of the author publishing the app.</p><p>Minimum length=1. Maximum
* length=127.</p><p>Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";</p>
*/
inline GetApplicationResult& WithAuthor(const Aws::String& value) { SetAuthor(value); return *this;}
/**
* <p>The name of the author publishing the app.</p><p>Minimum length=1. Maximum
* length=127.</p><p>Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";</p>
*/
inline GetApplicationResult& WithAuthor(Aws::String&& value) { SetAuthor(std::move(value)); return *this;}
/**
* <p>The name of the author publishing the app.</p><p>Minimum length=1. Maximum
* length=127.</p><p>Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";</p>
*/
inline GetApplicationResult& WithAuthor(const char* value) { SetAuthor(value); return *this;}
/**
* <p>The date and time this resource was created.</p>
*/
inline const Aws::String& GetCreationTime() const{ return m_creationTime; }
/**
* <p>The date and time this resource was created.</p>
*/
inline void SetCreationTime(const Aws::String& value) { m_creationTime = value; }
/**
* <p>The date and time this resource was created.</p>
*/
inline void SetCreationTime(Aws::String&& value) { m_creationTime = std::move(value); }
/**
* <p>The date and time this resource was created.</p>
*/
inline void SetCreationTime(const char* value) { m_creationTime.assign(value); }
/**
* <p>The date and time this resource was created.</p>
*/
inline GetApplicationResult& WithCreationTime(const Aws::String& value) { SetCreationTime(value); return *this;}
/**
* <p>The date and time this resource was created.</p>
*/
inline GetApplicationResult& WithCreationTime(Aws::String&& value) { SetCreationTime(std::move(value)); return *this;}
/**
* <p>The date and time this resource was created.</p>
*/
inline GetApplicationResult& WithCreationTime(const char* value) { SetCreationTime(value); return *this;}
/**
* <p>The description of the application.</p><p>Minimum length=1. Maximum
* length=256</p>
*/
inline const Aws::String& GetDescription() const{ return m_description; }
/**
* <p>The description of the application.</p><p>Minimum length=1. Maximum
* length=256</p>
*/
inline void SetDescription(const Aws::String& value) { m_description = value; }
/**
* <p>The description of the application.</p><p>Minimum length=1. Maximum
* length=256</p>
*/
inline void SetDescription(Aws::String&& value) { m_description = std::move(value); }
/**
* <p>The description of the application.</p><p>Minimum length=1. Maximum
* length=256</p>
*/
inline void SetDescription(const char* value) { m_description.assign(value); }
/**
* <p>The description of the application.</p><p>Minimum length=1. Maximum
* length=256</p>
*/
inline GetApplicationResult& WithDescription(const Aws::String& value) { SetDescription(value); return *this;}
/**
* <p>The description of the application.</p><p>Minimum length=1. Maximum
* length=256</p>
*/
inline GetApplicationResult& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;}
/**
* <p>The description of the application.</p><p>Minimum length=1. Maximum
* length=256</p>
*/
inline GetApplicationResult& WithDescription(const char* value) { SetDescription(value); return *this;}
/**
* <p>A URL with more information about the application, for example the location
* of your GitHub repository for the application.</p>
*/
inline const Aws::String& GetHomePageUrl() const{ return m_homePageUrl; }
/**
* <p>A URL with more information about the application, for example the location
* of your GitHub repository for the application.</p>
*/
inline void SetHomePageUrl(const Aws::String& value) { m_homePageUrl = value; }
/**
* <p>A URL with more information about the application, for example the location
* of your GitHub repository for the application.</p>
*/
inline void SetHomePageUrl(Aws::String&& value) { m_homePageUrl = std::move(value); }
/**
* <p>A URL with more information about the application, for example the location
* of your GitHub repository for the application.</p>
*/
inline void SetHomePageUrl(const char* value) { m_homePageUrl.assign(value); }
/**
* <p>A URL with more information about the application, for example the location
* of your GitHub repository for the application.</p>
*/
inline GetApplicationResult& WithHomePageUrl(const Aws::String& value) { SetHomePageUrl(value); return *this;}
/**
* <p>A URL with more information about the application, for example the location
* of your GitHub repository for the application.</p>
*/
inline GetApplicationResult& WithHomePageUrl(Aws::String&& value) { SetHomePageUrl(std::move(value)); return *this;}
/**
* <p>A URL with more information about the application, for example the location
* of your GitHub repository for the application.</p>
*/
inline GetApplicationResult& WithHomePageUrl(const char* value) { SetHomePageUrl(value); return *this;}
/**
* <p>Whether the author of this application has been verified. This means means
* that AWS has made a good faith review, as a reasonable and prudent service
* provider, of the information provided by the requester and has confirmed that
* the requester's identity is as claimed.</p>
*/
inline bool GetIsVerifiedAuthor() const{ return m_isVerifiedAuthor; }
/**
* <p>Whether the author of this application has been verified. This means means
* that AWS has made a good faith review, as a reasonable and prudent service
* provider, of the information provided by the requester and has confirmed that
* the requester's identity is as claimed.</p>
*/
inline void SetIsVerifiedAuthor(bool value) { m_isVerifiedAuthor = value; }
/**
* <p>Whether the author of this application has been verified. This means means
* that AWS has made a good faith review, as a reasonable and prudent service
* provider, of the information provided by the requester and has confirmed that
* the requester's identity is as claimed.</p>
*/
inline GetApplicationResult& WithIsVerifiedAuthor(bool value) { SetIsVerifiedAuthor(value); return *this;}
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline const Aws::Vector<Aws::String>& GetLabels() const{ return m_labels; }
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline void SetLabels(const Aws::Vector<Aws::String>& value) { m_labels = value; }
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline void SetLabels(Aws::Vector<Aws::String>&& value) { m_labels = std::move(value); }
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline GetApplicationResult& WithLabels(const Aws::Vector<Aws::String>& value) { SetLabels(value); return *this;}
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline GetApplicationResult& WithLabels(Aws::Vector<Aws::String>&& value) { SetLabels(std::move(value)); return *this;}
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline GetApplicationResult& AddLabels(const Aws::String& value) { m_labels.push_back(value); return *this; }
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline GetApplicationResult& AddLabels(Aws::String&& value) { m_labels.push_back(std::move(value)); return *this; }
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline GetApplicationResult& AddLabels(const char* value) { m_labels.push_back(value); return *this; }
/**
* <p>A link to a license file of the app that matches the spdxLicenseID value of
* your application.</p><p>Maximum size 5 MB</p>
*/
inline const Aws::String& GetLicenseUrl() const{ return m_licenseUrl; }
/**
* <p>A link to a license file of the app that matches the spdxLicenseID value of
* your application.</p><p>Maximum size 5 MB</p>
*/
inline void SetLicenseUrl(const Aws::String& value) { m_licenseUrl = value; }
/**
* <p>A link to a license file of the app that matches the spdxLicenseID value of
* your application.</p><p>Maximum size 5 MB</p>
*/
inline void SetLicenseUrl(Aws::String&& value) { m_licenseUrl = std::move(value); }
/**
* <p>A link to a license file of the app that matches the spdxLicenseID value of
* your application.</p><p>Maximum size 5 MB</p>
*/
inline void SetLicenseUrl(const char* value) { m_licenseUrl.assign(value); }
/**
* <p>A link to a license file of the app that matches the spdxLicenseID value of
* your application.</p><p>Maximum size 5 MB</p>
*/
inline GetApplicationResult& WithLicenseUrl(const Aws::String& value) { SetLicenseUrl(value); return *this;}
/**
* <p>A link to a license file of the app that matches the spdxLicenseID value of
* your application.</p><p>Maximum size 5 MB</p>
*/
inline GetApplicationResult& WithLicenseUrl(Aws::String&& value) { SetLicenseUrl(std::move(value)); return *this;}
/**
* <p>A link to a license file of the app that matches the spdxLicenseID value of
* your application.</p><p>Maximum size 5 MB</p>
*/
inline GetApplicationResult& WithLicenseUrl(const char* value) { SetLicenseUrl(value); return *this;}
/**
* <p>The name of the application.</p><p>Minimum length=1. Maximum
* length=140</p><p>Pattern: "[a-zA-Z0-9\\-]+";</p>
*/
inline const Aws::String& GetName() const{ return m_name; }
/**
* <p>The name of the application.</p><p>Minimum length=1. Maximum
* length=140</p><p>Pattern: "[a-zA-Z0-9\\-]+";</p>
*/
inline void SetName(const Aws::String& value) { m_name = value; }
/**
* <p>The name of the application.</p><p>Minimum length=1. Maximum
* length=140</p><p>Pattern: "[a-zA-Z0-9\\-]+";</p>
*/
inline void SetName(Aws::String&& value) { m_name = std::move(value); }
/**
* <p>The name of the application.</p><p>Minimum length=1. Maximum
* length=140</p><p>Pattern: "[a-zA-Z0-9\\-]+";</p>
*/
inline void SetName(const char* value) { m_name.assign(value); }
/**
* <p>The name of the application.</p><p>Minimum length=1. Maximum
* length=140</p><p>Pattern: "[a-zA-Z0-9\\-]+";</p>
*/
inline GetApplicationResult& WithName(const Aws::String& value) { SetName(value); return *this;}
/**
* <p>The name of the application.</p><p>Minimum length=1. Maximum
* length=140</p><p>Pattern: "[a-zA-Z0-9\\-]+";</p>
*/
inline GetApplicationResult& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;}
/**
* <p>The name of the application.</p><p>Minimum length=1. Maximum
* length=140</p><p>Pattern: "[a-zA-Z0-9\\-]+";</p>
*/
inline GetApplicationResult& WithName(const char* value) { SetName(value); return *this;}
/**
* <p>A link to the readme file in Markdown language that contains a more detailed
* description of the application and how it works.</p><p>Maximum size 5 MB</p>
*/
inline const Aws::String& GetReadmeUrl() const{ return m_readmeUrl; }
/**
* <p>A link to the readme file in Markdown language that contains a more detailed
* description of the application and how it works.</p><p>Maximum size 5 MB</p>
*/
inline void SetReadmeUrl(const Aws::String& value) { m_readmeUrl = value; }
/**
* <p>A link to the readme file in Markdown language that contains a more detailed
* description of the application and how it works.</p><p>Maximum size 5 MB</p>
*/
inline void SetReadmeUrl(Aws::String&& value) { m_readmeUrl = std::move(value); }
/**
* <p>A link to the readme file in Markdown language that contains a more detailed
* description of the application and how it works.</p><p>Maximum size 5 MB</p>
*/
inline void SetReadmeUrl(const char* value) { m_readmeUrl.assign(value); }
/**
* <p>A link to the readme file in Markdown language that contains a more detailed
* description of the application and how it works.</p><p>Maximum size 5 MB</p>
*/
inline GetApplicationResult& WithReadmeUrl(const Aws::String& value) { SetReadmeUrl(value); return *this;}
/**
* <p>A link to the readme file in Markdown language that contains a more detailed
* description of the application and how it works.</p><p>Maximum size 5 MB</p>
*/
inline GetApplicationResult& WithReadmeUrl(Aws::String&& value) { SetReadmeUrl(std::move(value)); return *this;}
/**
* <p>A link to the readme file in Markdown language that contains a more detailed
* description of the application and how it works.</p><p>Maximum size 5 MB</p>
*/
inline GetApplicationResult& WithReadmeUrl(const char* value) { SetReadmeUrl(value); return *this;}
/**
* <p>A valid identifier from https://spdx.org/licenses/.</p>
*/
inline const Aws::String& GetSpdxLicenseId() const{ return m_spdxLicenseId; }
/**
* <p>A valid identifier from https://spdx.org/licenses/.</p>
*/
inline void SetSpdxLicenseId(const Aws::String& value) { m_spdxLicenseId = value; }
/**
* <p>A valid identifier from https://spdx.org/licenses/.</p>
*/
inline void SetSpdxLicenseId(Aws::String&& value) { m_spdxLicenseId = std::move(value); }
/**
* <p>A valid identifier from https://spdx.org/licenses/.</p>
*/
inline void SetSpdxLicenseId(const char* value) { m_spdxLicenseId.assign(value); }
/**
* <p>A valid identifier from https://spdx.org/licenses/.</p>
*/
inline GetApplicationResult& WithSpdxLicenseId(const Aws::String& value) { SetSpdxLicenseId(value); return *this;}
/**
* <p>A valid identifier from https://spdx.org/licenses/.</p>
*/
inline GetApplicationResult& WithSpdxLicenseId(Aws::String&& value) { SetSpdxLicenseId(std::move(value)); return *this;}
/**
* <p>A valid identifier from https://spdx.org/licenses/.</p>
*/
inline GetApplicationResult& WithSpdxLicenseId(const char* value) { SetSpdxLicenseId(value); return *this;}
/**
* <p>The URL to the public profile of a verified author. This URL is submitted by
* the author.</p>
*/
inline const Aws::String& GetVerifiedAuthorUrl() const{ return m_verifiedAuthorUrl; }
/**
* <p>The URL to the public profile of a verified author. This URL is submitted by
* the author.</p>
*/
inline void SetVerifiedAuthorUrl(const Aws::String& value) { m_verifiedAuthorUrl = value; }
/**
* <p>The URL to the public profile of a verified author. This URL is submitted by
* the author.</p>
*/
inline void SetVerifiedAuthorUrl(Aws::String&& value) { m_verifiedAuthorUrl = std::move(value); }
/**
* <p>The URL to the public profile of a verified author. This URL is submitted by
* the author.</p>
*/
inline void SetVerifiedAuthorUrl(const char* value) { m_verifiedAuthorUrl.assign(value); }
/**
* <p>The URL to the public profile of a verified author. This URL is submitted by
* the author.</p>
*/
inline GetApplicationResult& WithVerifiedAuthorUrl(const Aws::String& value) { SetVerifiedAuthorUrl(value); return *this;}
/**
* <p>The URL to the public profile of a verified author. This URL is submitted by
* the author.</p>
*/
inline GetApplicationResult& WithVerifiedAuthorUrl(Aws::String&& value) { SetVerifiedAuthorUrl(std::move(value)); return *this;}
/**
* <p>The URL to the public profile of a verified author. This URL is submitted by
* the author.</p>
*/
inline GetApplicationResult& WithVerifiedAuthorUrl(const char* value) { SetVerifiedAuthorUrl(value); return *this;}
/**
* <p>Version information about the application.</p>
*/
inline const Version& GetVersion() const{ return m_version; }
/**
* <p>Version information about the application.</p>
*/
inline void SetVersion(const Version& value) { m_version = value; }
/**
* <p>Version information about the application.</p>
*/
inline void SetVersion(Version&& value) { m_version = std::move(value); }
/**
* <p>Version information about the application.</p>
*/
inline GetApplicationResult& WithVersion(const Version& value) { SetVersion(value); return *this;}
/**
* <p>Version information about the application.</p>
*/
inline GetApplicationResult& WithVersion(Version&& value) { SetVersion(std::move(value)); return *this;}
private:
Aws::String m_applicationId;
Aws::String m_author;
Aws::String m_creationTime;
Aws::String m_description;
Aws::String m_homePageUrl;
bool m_isVerifiedAuthor;
Aws::Vector<Aws::String> m_labels;
Aws::String m_licenseUrl;
Aws::String m_name;
Aws::String m_readmeUrl;
Aws::String m_spdxLicenseId;
Aws::String m_verifiedAuthorUrl;
Version m_version;
};
} // namespace Model
} // namespace ServerlessApplicationRepository
} // namespace Aws

View File

@@ -0,0 +1,135 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/serverlessrepo/ServerlessApplicationRepository_EXPORTS.h>
#include <aws/serverlessrepo/ServerlessApplicationRepositoryRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace ServerlessApplicationRepository
{
namespace Model
{
/**
*/
class AWS_SERVERLESSAPPLICATIONREPOSITORY_API GetCloudFormationTemplateRequest : public ServerlessApplicationRepositoryRequest
{
public:
GetCloudFormationTemplateRequest();
// 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 "GetCloudFormationTemplate"; }
Aws::String SerializePayload() const override;
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline const Aws::String& GetApplicationId() const{ return m_applicationId; }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline bool ApplicationIdHasBeenSet() const { return m_applicationIdHasBeenSet; }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline void SetApplicationId(const Aws::String& value) { m_applicationIdHasBeenSet = true; m_applicationId = value; }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline void SetApplicationId(Aws::String&& value) { m_applicationIdHasBeenSet = true; m_applicationId = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline void SetApplicationId(const char* value) { m_applicationIdHasBeenSet = true; m_applicationId.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline GetCloudFormationTemplateRequest& WithApplicationId(const Aws::String& value) { SetApplicationId(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline GetCloudFormationTemplateRequest& WithApplicationId(Aws::String&& value) { SetApplicationId(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline GetCloudFormationTemplateRequest& WithApplicationId(const char* value) { SetApplicationId(value); return *this;}
/**
* <p>The UUID returned by CreateCloudFormationTemplate.</p><p>Pattern:
* [0-9a-fA-F]{8}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{12}</p>
*/
inline const Aws::String& GetTemplateId() const{ return m_templateId; }
/**
* <p>The UUID returned by CreateCloudFormationTemplate.</p><p>Pattern:
* [0-9a-fA-F]{8}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{12}</p>
*/
inline bool TemplateIdHasBeenSet() const { return m_templateIdHasBeenSet; }
/**
* <p>The UUID returned by CreateCloudFormationTemplate.</p><p>Pattern:
* [0-9a-fA-F]{8}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{12}</p>
*/
inline void SetTemplateId(const Aws::String& value) { m_templateIdHasBeenSet = true; m_templateId = value; }
/**
* <p>The UUID returned by CreateCloudFormationTemplate.</p><p>Pattern:
* [0-9a-fA-F]{8}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{12}</p>
*/
inline void SetTemplateId(Aws::String&& value) { m_templateIdHasBeenSet = true; m_templateId = std::move(value); }
/**
* <p>The UUID returned by CreateCloudFormationTemplate.</p><p>Pattern:
* [0-9a-fA-F]{8}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{12}</p>
*/
inline void SetTemplateId(const char* value) { m_templateIdHasBeenSet = true; m_templateId.assign(value); }
/**
* <p>The UUID returned by CreateCloudFormationTemplate.</p><p>Pattern:
* [0-9a-fA-F]{8}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{12}</p>
*/
inline GetCloudFormationTemplateRequest& WithTemplateId(const Aws::String& value) { SetTemplateId(value); return *this;}
/**
* <p>The UUID returned by CreateCloudFormationTemplate.</p><p>Pattern:
* [0-9a-fA-F]{8}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{12}</p>
*/
inline GetCloudFormationTemplateRequest& WithTemplateId(Aws::String&& value) { SetTemplateId(std::move(value)); return *this;}
/**
* <p>The UUID returned by CreateCloudFormationTemplate.</p><p>Pattern:
* [0-9a-fA-F]{8}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{12}</p>
*/
inline GetCloudFormationTemplateRequest& WithTemplateId(const char* value) { SetTemplateId(value); return *this;}
private:
Aws::String m_applicationId;
bool m_applicationIdHasBeenSet;
Aws::String m_templateId;
bool m_templateIdHasBeenSet;
};
} // namespace Model
} // namespace ServerlessApplicationRepository
} // namespace Aws

View File

@@ -0,0 +1,362 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/serverlessrepo/ServerlessApplicationRepository_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/serverlessrepo/model/Status.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace ServerlessApplicationRepository
{
namespace Model
{
class AWS_SERVERLESSAPPLICATIONREPOSITORY_API GetCloudFormationTemplateResult
{
public:
GetCloudFormationTemplateResult();
GetCloudFormationTemplateResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
GetCloudFormationTemplateResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline const Aws::String& GetApplicationId() const{ return m_applicationId; }
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline void SetApplicationId(const Aws::String& value) { m_applicationId = value; }
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline void SetApplicationId(Aws::String&& value) { m_applicationId = std::move(value); }
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline void SetApplicationId(const char* value) { m_applicationId.assign(value); }
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline GetCloudFormationTemplateResult& WithApplicationId(const Aws::String& value) { SetApplicationId(value); return *this;}
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline GetCloudFormationTemplateResult& WithApplicationId(Aws::String&& value) { SetApplicationId(std::move(value)); return *this;}
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline GetCloudFormationTemplateResult& WithApplicationId(const char* value) { SetApplicationId(value); return *this;}
/**
* <p>The date and time this resource was created.</p>
*/
inline const Aws::String& GetCreationTime() const{ return m_creationTime; }
/**
* <p>The date and time this resource was created.</p>
*/
inline void SetCreationTime(const Aws::String& value) { m_creationTime = value; }
/**
* <p>The date and time this resource was created.</p>
*/
inline void SetCreationTime(Aws::String&& value) { m_creationTime = std::move(value); }
/**
* <p>The date and time this resource was created.</p>
*/
inline void SetCreationTime(const char* value) { m_creationTime.assign(value); }
/**
* <p>The date and time this resource was created.</p>
*/
inline GetCloudFormationTemplateResult& WithCreationTime(const Aws::String& value) { SetCreationTime(value); return *this;}
/**
* <p>The date and time this resource was created.</p>
*/
inline GetCloudFormationTemplateResult& WithCreationTime(Aws::String&& value) { SetCreationTime(std::move(value)); return *this;}
/**
* <p>The date and time this resource was created.</p>
*/
inline GetCloudFormationTemplateResult& WithCreationTime(const char* value) { SetCreationTime(value); return *this;}
/**
* <p>The date and time this template expires. Templates
expire 1 hour after
* creation.</p>
*/
inline const Aws::String& GetExpirationTime() const{ return m_expirationTime; }
/**
* <p>The date and time this template expires. Templates
expire 1 hour after
* creation.</p>
*/
inline void SetExpirationTime(const Aws::String& value) { m_expirationTime = value; }
/**
* <p>The date and time this template expires. Templates
expire 1 hour after
* creation.</p>
*/
inline void SetExpirationTime(Aws::String&& value) { m_expirationTime = std::move(value); }
/**
* <p>The date and time this template expires. Templates
expire 1 hour after
* creation.</p>
*/
inline void SetExpirationTime(const char* value) { m_expirationTime.assign(value); }
/**
* <p>The date and time this template expires. Templates
expire 1 hour after
* creation.</p>
*/
inline GetCloudFormationTemplateResult& WithExpirationTime(const Aws::String& value) { SetExpirationTime(value); return *this;}
/**
* <p>The date and time this template expires. Templates
expire 1 hour after
* creation.</p>
*/
inline GetCloudFormationTemplateResult& WithExpirationTime(Aws::String&& value) { SetExpirationTime(std::move(value)); return *this;}
/**
* <p>The date and time this template expires. Templates
expire 1 hour after
* creation.</p>
*/
inline GetCloudFormationTemplateResult& WithExpirationTime(const char* value) { SetExpirationTime(value); return *this;}
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline const Aws::String& GetSemanticVersion() const{ return m_semanticVersion; }
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline void SetSemanticVersion(const Aws::String& value) { m_semanticVersion = value; }
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline void SetSemanticVersion(Aws::String&& value) { m_semanticVersion = std::move(value); }
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline void SetSemanticVersion(const char* value) { m_semanticVersion.assign(value); }
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline GetCloudFormationTemplateResult& WithSemanticVersion(const Aws::String& value) { SetSemanticVersion(value); return *this;}
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline GetCloudFormationTemplateResult& WithSemanticVersion(Aws::String&& value) { SetSemanticVersion(std::move(value)); return *this;}
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline GetCloudFormationTemplateResult& WithSemanticVersion(const char* value) { SetSemanticVersion(value); return *this;}
/**
* <p>Status of the template creation workflow.</p><p>Possible values: PREPARING |
* ACTIVE | EXPIRED
</p>
*/
inline const Status& GetStatus() const{ return m_status; }
/**
* <p>Status of the template creation workflow.</p><p>Possible values: PREPARING |
* ACTIVE | EXPIRED
</p>
*/
inline void SetStatus(const Status& value) { m_status = value; }
/**
* <p>Status of the template creation workflow.</p><p>Possible values: PREPARING |
* ACTIVE | EXPIRED
</p>
*/
inline void SetStatus(Status&& value) { m_status = std::move(value); }
/**
* <p>Status of the template creation workflow.</p><p>Possible values: PREPARING |
* ACTIVE | EXPIRED
</p>
*/
inline GetCloudFormationTemplateResult& WithStatus(const Status& value) { SetStatus(value); return *this;}
/**
* <p>Status of the template creation workflow.</p><p>Possible values: PREPARING |
* ACTIVE | EXPIRED
</p>
*/
inline GetCloudFormationTemplateResult& WithStatus(Status&& value) { SetStatus(std::move(value)); return *this;}
/**
* <p>The UUID returned by CreateCloudFormationTemplate.</p><p>Pattern:
* [0-9a-fA-F]{8}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{12}</p>
*/
inline const Aws::String& GetTemplateId() const{ return m_templateId; }
/**
* <p>The UUID returned by CreateCloudFormationTemplate.</p><p>Pattern:
* [0-9a-fA-F]{8}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{12}</p>
*/
inline void SetTemplateId(const Aws::String& value) { m_templateId = value; }
/**
* <p>The UUID returned by CreateCloudFormationTemplate.</p><p>Pattern:
* [0-9a-fA-F]{8}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{12}</p>
*/
inline void SetTemplateId(Aws::String&& value) { m_templateId = std::move(value); }
/**
* <p>The UUID returned by CreateCloudFormationTemplate.</p><p>Pattern:
* [0-9a-fA-F]{8}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{12}</p>
*/
inline void SetTemplateId(const char* value) { m_templateId.assign(value); }
/**
* <p>The UUID returned by CreateCloudFormationTemplate.</p><p>Pattern:
* [0-9a-fA-F]{8}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{12}</p>
*/
inline GetCloudFormationTemplateResult& WithTemplateId(const Aws::String& value) { SetTemplateId(value); return *this;}
/**
* <p>The UUID returned by CreateCloudFormationTemplate.</p><p>Pattern:
* [0-9a-fA-F]{8}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{12}</p>
*/
inline GetCloudFormationTemplateResult& WithTemplateId(Aws::String&& value) { SetTemplateId(std::move(value)); return *this;}
/**
* <p>The UUID returned by CreateCloudFormationTemplate.</p><p>Pattern:
* [0-9a-fA-F]{8}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{12}</p>
*/
inline GetCloudFormationTemplateResult& WithTemplateId(const char* value) { SetTemplateId(value); return *this;}
/**
* <p>A link to the template that can be used to deploy the application using
AWS
* CloudFormation.</p>
*/
inline const Aws::String& GetTemplateUrl() const{ return m_templateUrl; }
/**
* <p>A link to the template that can be used to deploy the application using
AWS
* CloudFormation.</p>
*/
inline void SetTemplateUrl(const Aws::String& value) { m_templateUrl = value; }
/**
* <p>A link to the template that can be used to deploy the application using
AWS
* CloudFormation.</p>
*/
inline void SetTemplateUrl(Aws::String&& value) { m_templateUrl = std::move(value); }
/**
* <p>A link to the template that can be used to deploy the application using
AWS
* CloudFormation.</p>
*/
inline void SetTemplateUrl(const char* value) { m_templateUrl.assign(value); }
/**
* <p>A link to the template that can be used to deploy the application using
AWS
* CloudFormation.</p>
*/
inline GetCloudFormationTemplateResult& WithTemplateUrl(const Aws::String& value) { SetTemplateUrl(value); return *this;}
/**
* <p>A link to the template that can be used to deploy the application using
AWS
* CloudFormation.</p>
*/
inline GetCloudFormationTemplateResult& WithTemplateUrl(Aws::String&& value) { SetTemplateUrl(std::move(value)); return *this;}
/**
* <p>A link to the template that can be used to deploy the application using
AWS
* CloudFormation.</p>
*/
inline GetCloudFormationTemplateResult& WithTemplateUrl(const char* value) { SetTemplateUrl(value); return *this;}
private:
Aws::String m_applicationId;
Aws::String m_creationTime;
Aws::String m_expirationTime;
Aws::String m_semanticVersion;
Status m_status;
Aws::String m_templateId;
Aws::String m_templateUrl;
};
} // namespace Model
} // namespace ServerlessApplicationRepository
} // 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/serverlessrepo/ServerlessApplicationRepository_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 ServerlessApplicationRepository
{
namespace Model
{
/**
* <p>The AWS Serverless Application Repository service encountered an internal
* error.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/InternalServerErrorException">AWS
* API Reference</a></p>
*/
class AWS_SERVERLESSAPPLICATIONREPOSITORY_API InternalServerErrorException
{
public:
InternalServerErrorException();
InternalServerErrorException(Aws::Utils::Json::JsonView jsonValue);
InternalServerErrorException& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>500</p>
*/
inline const Aws::String& GetErrorCode() const{ return m_errorCode; }
/**
* <p>500</p>
*/
inline bool ErrorCodeHasBeenSet() const { return m_errorCodeHasBeenSet; }
/**
* <p>500</p>
*/
inline void SetErrorCode(const Aws::String& value) { m_errorCodeHasBeenSet = true; m_errorCode = value; }
/**
* <p>500</p>
*/
inline void SetErrorCode(Aws::String&& value) { m_errorCodeHasBeenSet = true; m_errorCode = std::move(value); }
/**
* <p>500</p>
*/
inline void SetErrorCode(const char* value) { m_errorCodeHasBeenSet = true; m_errorCode.assign(value); }
/**
* <p>500</p>
*/
inline InternalServerErrorException& WithErrorCode(const Aws::String& value) { SetErrorCode(value); return *this;}
/**
* <p>500</p>
*/
inline InternalServerErrorException& WithErrorCode(Aws::String&& value) { SetErrorCode(std::move(value)); return *this;}
/**
* <p>500</p>
*/
inline InternalServerErrorException& WithErrorCode(const char* value) { SetErrorCode(value); return *this;}
/**
* <p>The AWS Serverless Application Repository service encountered an internal
* error.</p>
*/
inline const Aws::String& GetMessage() const{ return m_message; }
/**
* <p>The AWS Serverless Application Repository service encountered an internal
* error.</p>
*/
inline bool MessageHasBeenSet() const { return m_messageHasBeenSet; }
/**
* <p>The AWS Serverless Application Repository service encountered an internal
* error.</p>
*/
inline void SetMessage(const Aws::String& value) { m_messageHasBeenSet = true; m_message = value; }
/**
* <p>The AWS Serverless Application Repository service encountered an internal
* error.</p>
*/
inline void SetMessage(Aws::String&& value) { m_messageHasBeenSet = true; m_message = std::move(value); }
/**
* <p>The AWS Serverless Application Repository service encountered an internal
* error.</p>
*/
inline void SetMessage(const char* value) { m_messageHasBeenSet = true; m_message.assign(value); }
/**
* <p>The AWS Serverless Application Repository service encountered an internal
* error.</p>
*/
inline InternalServerErrorException& WithMessage(const Aws::String& value) { SetMessage(value); return *this;}
/**
* <p>The AWS Serverless Application Repository service encountered an internal
* error.</p>
*/
inline InternalServerErrorException& WithMessage(Aws::String&& value) { SetMessage(std::move(value)); return *this;}
/**
* <p>The AWS Serverless Application Repository service encountered an internal
* error.</p>
*/
inline InternalServerErrorException& WithMessage(const char* value) { SetMessage(value); return *this;}
private:
Aws::String m_errorCode;
bool m_errorCodeHasBeenSet;
Aws::String m_message;
bool m_messageHasBeenSet;
};
} // namespace Model
} // namespace ServerlessApplicationRepository
} // namespace Aws

View File

@@ -0,0 +1,201 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/serverlessrepo/ServerlessApplicationRepository_EXPORTS.h>
#include <aws/serverlessrepo/ServerlessApplicationRepositoryRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Http
{
class URI;
} //namespace Http
namespace ServerlessApplicationRepository
{
namespace Model
{
/**
*/
class AWS_SERVERLESSAPPLICATIONREPOSITORY_API ListApplicationDependenciesRequest : public ServerlessApplicationRepositoryRequest
{
public:
ListApplicationDependenciesRequest();
// 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 "ListApplicationDependencies"; }
Aws::String SerializePayload() const override;
void AddQueryStringParameters(Aws::Http::URI& uri) const override;
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline const Aws::String& GetApplicationId() const{ return m_applicationId; }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline bool ApplicationIdHasBeenSet() const { return m_applicationIdHasBeenSet; }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline void SetApplicationId(const Aws::String& value) { m_applicationIdHasBeenSet = true; m_applicationId = value; }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline void SetApplicationId(Aws::String&& value) { m_applicationIdHasBeenSet = true; m_applicationId = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline void SetApplicationId(const char* value) { m_applicationIdHasBeenSet = true; m_applicationId.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline ListApplicationDependenciesRequest& WithApplicationId(const Aws::String& value) { SetApplicationId(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline ListApplicationDependenciesRequest& WithApplicationId(Aws::String&& value) { SetApplicationId(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline ListApplicationDependenciesRequest& WithApplicationId(const char* value) { SetApplicationId(value); return *this;}
/**
* <p>The total number of items to return.</p>
*/
inline int GetMaxItems() const{ return m_maxItems; }
/**
* <p>The total number of items to return.</p>
*/
inline bool MaxItemsHasBeenSet() const { return m_maxItemsHasBeenSet; }
/**
* <p>The total number of items to return.</p>
*/
inline void SetMaxItems(int value) { m_maxItemsHasBeenSet = true; m_maxItems = value; }
/**
* <p>The total number of items to return.</p>
*/
inline ListApplicationDependenciesRequest& WithMaxItems(int value) { SetMaxItems(value); return *this;}
/**
* <p>A token to specify where to start paginating.</p>
*/
inline const Aws::String& GetNextToken() const{ return m_nextToken; }
/**
* <p>A token to specify where to start paginating.</p>
*/
inline bool NextTokenHasBeenSet() const { return m_nextTokenHasBeenSet; }
/**
* <p>A token to specify where to start paginating.</p>
*/
inline void SetNextToken(const Aws::String& value) { m_nextTokenHasBeenSet = true; m_nextToken = value; }
/**
* <p>A token to specify where to start paginating.</p>
*/
inline void SetNextToken(Aws::String&& value) { m_nextTokenHasBeenSet = true; m_nextToken = std::move(value); }
/**
* <p>A token to specify where to start paginating.</p>
*/
inline void SetNextToken(const char* value) { m_nextTokenHasBeenSet = true; m_nextToken.assign(value); }
/**
* <p>A token to specify where to start paginating.</p>
*/
inline ListApplicationDependenciesRequest& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;}
/**
* <p>A token to specify where to start paginating.</p>
*/
inline ListApplicationDependenciesRequest& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;}
/**
* <p>A token to specify where to start paginating.</p>
*/
inline ListApplicationDependenciesRequest& WithNextToken(const char* value) { SetNextToken(value); return *this;}
/**
* <p>The semantic version of the application to get.</p>
*/
inline const Aws::String& GetSemanticVersion() const{ return m_semanticVersion; }
/**
* <p>The semantic version of the application to get.</p>
*/
inline bool SemanticVersionHasBeenSet() const { return m_semanticVersionHasBeenSet; }
/**
* <p>The semantic version of the application to get.</p>
*/
inline void SetSemanticVersion(const Aws::String& value) { m_semanticVersionHasBeenSet = true; m_semanticVersion = value; }
/**
* <p>The semantic version of the application to get.</p>
*/
inline void SetSemanticVersion(Aws::String&& value) { m_semanticVersionHasBeenSet = true; m_semanticVersion = std::move(value); }
/**
* <p>The semantic version of the application to get.</p>
*/
inline void SetSemanticVersion(const char* value) { m_semanticVersionHasBeenSet = true; m_semanticVersion.assign(value); }
/**
* <p>The semantic version of the application to get.</p>
*/
inline ListApplicationDependenciesRequest& WithSemanticVersion(const Aws::String& value) { SetSemanticVersion(value); return *this;}
/**
* <p>The semantic version of the application to get.</p>
*/
inline ListApplicationDependenciesRequest& WithSemanticVersion(Aws::String&& value) { SetSemanticVersion(std::move(value)); return *this;}
/**
* <p>The semantic version of the application to get.</p>
*/
inline ListApplicationDependenciesRequest& WithSemanticVersion(const char* value) { SetSemanticVersion(value); return *this;}
private:
Aws::String m_applicationId;
bool m_applicationIdHasBeenSet;
int m_maxItems;
bool m_maxItemsHasBeenSet;
Aws::String m_nextToken;
bool m_nextTokenHasBeenSet;
Aws::String m_semanticVersion;
bool m_semanticVersionHasBeenSet;
};
} // namespace Model
} // namespace ServerlessApplicationRepository
} // namespace Aws

View File

@@ -0,0 +1,117 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/serverlessrepo/ServerlessApplicationRepository_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/serverlessrepo/model/ApplicationDependencySummary.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace ServerlessApplicationRepository
{
namespace Model
{
class AWS_SERVERLESSAPPLICATIONREPOSITORY_API ListApplicationDependenciesResult
{
public:
ListApplicationDependenciesResult();
ListApplicationDependenciesResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
ListApplicationDependenciesResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>An array of application summaries nested in the application.</p>
*/
inline const Aws::Vector<ApplicationDependencySummary>& GetDependencies() const{ return m_dependencies; }
/**
* <p>An array of application summaries nested in the application.</p>
*/
inline void SetDependencies(const Aws::Vector<ApplicationDependencySummary>& value) { m_dependencies = value; }
/**
* <p>An array of application summaries nested in the application.</p>
*/
inline void SetDependencies(Aws::Vector<ApplicationDependencySummary>&& value) { m_dependencies = std::move(value); }
/**
* <p>An array of application summaries nested in the application.</p>
*/
inline ListApplicationDependenciesResult& WithDependencies(const Aws::Vector<ApplicationDependencySummary>& value) { SetDependencies(value); return *this;}
/**
* <p>An array of application summaries nested in the application.</p>
*/
inline ListApplicationDependenciesResult& WithDependencies(Aws::Vector<ApplicationDependencySummary>&& value) { SetDependencies(std::move(value)); return *this;}
/**
* <p>An array of application summaries nested in the application.</p>
*/
inline ListApplicationDependenciesResult& AddDependencies(const ApplicationDependencySummary& value) { m_dependencies.push_back(value); return *this; }
/**
* <p>An array of application summaries nested in the application.</p>
*/
inline ListApplicationDependenciesResult& AddDependencies(ApplicationDependencySummary&& value) { m_dependencies.push_back(std::move(value)); return *this; }
/**
* <p>The token to request the next page of results.</p>
*/
inline const Aws::String& GetNextToken() const{ return m_nextToken; }
/**
* <p>The token to request the next page of results.</p>
*/
inline void SetNextToken(const Aws::String& value) { m_nextToken = value; }
/**
* <p>The token to request the next page of results.</p>
*/
inline void SetNextToken(Aws::String&& value) { m_nextToken = std::move(value); }
/**
* <p>The token to request the next page of results.</p>
*/
inline void SetNextToken(const char* value) { m_nextToken.assign(value); }
/**
* <p>The token to request the next page of results.</p>
*/
inline ListApplicationDependenciesResult& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;}
/**
* <p>The token to request the next page of results.</p>
*/
inline ListApplicationDependenciesResult& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;}
/**
* <p>The token to request the next page of results.</p>
*/
inline ListApplicationDependenciesResult& WithNextToken(const char* value) { SetNextToken(value); return *this;}
private:
Aws::Vector<ApplicationDependencySummary> m_dependencies;
Aws::String m_nextToken;
};
} // namespace Model
} // namespace ServerlessApplicationRepository
} // namespace Aws

View File

@@ -0,0 +1,157 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/serverlessrepo/ServerlessApplicationRepository_EXPORTS.h>
#include <aws/serverlessrepo/ServerlessApplicationRepositoryRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Http
{
class URI;
} //namespace Http
namespace ServerlessApplicationRepository
{
namespace Model
{
/**
*/
class AWS_SERVERLESSAPPLICATIONREPOSITORY_API ListApplicationVersionsRequest : public ServerlessApplicationRepositoryRequest
{
public:
ListApplicationVersionsRequest();
// 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 "ListApplicationVersions"; }
Aws::String SerializePayload() const override;
void AddQueryStringParameters(Aws::Http::URI& uri) const override;
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline const Aws::String& GetApplicationId() const{ return m_applicationId; }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline bool ApplicationIdHasBeenSet() const { return m_applicationIdHasBeenSet; }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline void SetApplicationId(const Aws::String& value) { m_applicationIdHasBeenSet = true; m_applicationId = value; }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline void SetApplicationId(Aws::String&& value) { m_applicationIdHasBeenSet = true; m_applicationId = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline void SetApplicationId(const char* value) { m_applicationIdHasBeenSet = true; m_applicationId.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline ListApplicationVersionsRequest& WithApplicationId(const Aws::String& value) { SetApplicationId(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline ListApplicationVersionsRequest& WithApplicationId(Aws::String&& value) { SetApplicationId(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline ListApplicationVersionsRequest& WithApplicationId(const char* value) { SetApplicationId(value); return *this;}
/**
* <p>The total number of items to return.</p>
*/
inline int GetMaxItems() const{ return m_maxItems; }
/**
* <p>The total number of items to return.</p>
*/
inline bool MaxItemsHasBeenSet() const { return m_maxItemsHasBeenSet; }
/**
* <p>The total number of items to return.</p>
*/
inline void SetMaxItems(int value) { m_maxItemsHasBeenSet = true; m_maxItems = value; }
/**
* <p>The total number of items to return.</p>
*/
inline ListApplicationVersionsRequest& WithMaxItems(int value) { SetMaxItems(value); return *this;}
/**
* <p>A token to specify where to start paginating.</p>
*/
inline const Aws::String& GetNextToken() const{ return m_nextToken; }
/**
* <p>A token to specify where to start paginating.</p>
*/
inline bool NextTokenHasBeenSet() const { return m_nextTokenHasBeenSet; }
/**
* <p>A token to specify where to start paginating.</p>
*/
inline void SetNextToken(const Aws::String& value) { m_nextTokenHasBeenSet = true; m_nextToken = value; }
/**
* <p>A token to specify where to start paginating.</p>
*/
inline void SetNextToken(Aws::String&& value) { m_nextTokenHasBeenSet = true; m_nextToken = std::move(value); }
/**
* <p>A token to specify where to start paginating.</p>
*/
inline void SetNextToken(const char* value) { m_nextTokenHasBeenSet = true; m_nextToken.assign(value); }
/**
* <p>A token to specify where to start paginating.</p>
*/
inline ListApplicationVersionsRequest& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;}
/**
* <p>A token to specify where to start paginating.</p>
*/
inline ListApplicationVersionsRequest& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;}
/**
* <p>A token to specify where to start paginating.</p>
*/
inline ListApplicationVersionsRequest& WithNextToken(const char* value) { SetNextToken(value); return *this;}
private:
Aws::String m_applicationId;
bool m_applicationIdHasBeenSet;
int m_maxItems;
bool m_maxItemsHasBeenSet;
Aws::String m_nextToken;
bool m_nextTokenHasBeenSet;
};
} // namespace Model
} // namespace ServerlessApplicationRepository
} // namespace Aws

View File

@@ -0,0 +1,117 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/serverlessrepo/ServerlessApplicationRepository_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/serverlessrepo/model/VersionSummary.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace ServerlessApplicationRepository
{
namespace Model
{
class AWS_SERVERLESSAPPLICATIONREPOSITORY_API ListApplicationVersionsResult
{
public:
ListApplicationVersionsResult();
ListApplicationVersionsResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
ListApplicationVersionsResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>The token to request the next page of results.</p>
*/
inline const Aws::String& GetNextToken() const{ return m_nextToken; }
/**
* <p>The token to request the next page of results.</p>
*/
inline void SetNextToken(const Aws::String& value) { m_nextToken = value; }
/**
* <p>The token to request the next page of results.</p>
*/
inline void SetNextToken(Aws::String&& value) { m_nextToken = std::move(value); }
/**
* <p>The token to request the next page of results.</p>
*/
inline void SetNextToken(const char* value) { m_nextToken.assign(value); }
/**
* <p>The token to request the next page of results.</p>
*/
inline ListApplicationVersionsResult& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;}
/**
* <p>The token to request the next page of results.</p>
*/
inline ListApplicationVersionsResult& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;}
/**
* <p>The token to request the next page of results.</p>
*/
inline ListApplicationVersionsResult& WithNextToken(const char* value) { SetNextToken(value); return *this;}
/**
* <p>An array of version summaries for the application.</p>
*/
inline const Aws::Vector<VersionSummary>& GetVersions() const{ return m_versions; }
/**
* <p>An array of version summaries for the application.</p>
*/
inline void SetVersions(const Aws::Vector<VersionSummary>& value) { m_versions = value; }
/**
* <p>An array of version summaries for the application.</p>
*/
inline void SetVersions(Aws::Vector<VersionSummary>&& value) { m_versions = std::move(value); }
/**
* <p>An array of version summaries for the application.</p>
*/
inline ListApplicationVersionsResult& WithVersions(const Aws::Vector<VersionSummary>& value) { SetVersions(value); return *this;}
/**
* <p>An array of version summaries for the application.</p>
*/
inline ListApplicationVersionsResult& WithVersions(Aws::Vector<VersionSummary>&& value) { SetVersions(std::move(value)); return *this;}
/**
* <p>An array of version summaries for the application.</p>
*/
inline ListApplicationVersionsResult& AddVersions(const VersionSummary& value) { m_versions.push_back(value); return *this; }
/**
* <p>An array of version summaries for the application.</p>
*/
inline ListApplicationVersionsResult& AddVersions(VersionSummary&& value) { m_versions.push_back(std::move(value)); return *this; }
private:
Aws::String m_nextToken;
Aws::Vector<VersionSummary> m_versions;
};
} // namespace Model
} // namespace ServerlessApplicationRepository
} // 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/serverlessrepo/ServerlessApplicationRepository_EXPORTS.h>
#include <aws/serverlessrepo/ServerlessApplicationRepositoryRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Http
{
class URI;
} //namespace Http
namespace ServerlessApplicationRepository
{
namespace Model
{
/**
*/
class AWS_SERVERLESSAPPLICATIONREPOSITORY_API ListApplicationsRequest : public ServerlessApplicationRepositoryRequest
{
public:
ListApplicationsRequest();
// 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 "ListApplications"; }
Aws::String SerializePayload() const override;
void AddQueryStringParameters(Aws::Http::URI& uri) const override;
/**
* <p>The total number of items to return.</p>
*/
inline int GetMaxItems() const{ return m_maxItems; }
/**
* <p>The total number of items to return.</p>
*/
inline bool MaxItemsHasBeenSet() const { return m_maxItemsHasBeenSet; }
/**
* <p>The total number of items to return.</p>
*/
inline void SetMaxItems(int value) { m_maxItemsHasBeenSet = true; m_maxItems = value; }
/**
* <p>The total number of items to return.</p>
*/
inline ListApplicationsRequest& WithMaxItems(int value) { SetMaxItems(value); return *this;}
/**
* <p>A token to specify where to start paginating.</p>
*/
inline const Aws::String& GetNextToken() const{ return m_nextToken; }
/**
* <p>A token to specify where to start paginating.</p>
*/
inline bool NextTokenHasBeenSet() const { return m_nextTokenHasBeenSet; }
/**
* <p>A token to specify where to start paginating.</p>
*/
inline void SetNextToken(const Aws::String& value) { m_nextTokenHasBeenSet = true; m_nextToken = value; }
/**
* <p>A token to specify where to start paginating.</p>
*/
inline void SetNextToken(Aws::String&& value) { m_nextTokenHasBeenSet = true; m_nextToken = std::move(value); }
/**
* <p>A token to specify where to start paginating.</p>
*/
inline void SetNextToken(const char* value) { m_nextTokenHasBeenSet = true; m_nextToken.assign(value); }
/**
* <p>A token to specify where to start paginating.</p>
*/
inline ListApplicationsRequest& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;}
/**
* <p>A token to specify where to start paginating.</p>
*/
inline ListApplicationsRequest& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;}
/**
* <p>A token to specify where to start paginating.</p>
*/
inline ListApplicationsRequest& WithNextToken(const char* value) { SetNextToken(value); return *this;}
private:
int m_maxItems;
bool m_maxItemsHasBeenSet;
Aws::String m_nextToken;
bool m_nextTokenHasBeenSet;
};
} // namespace Model
} // namespace ServerlessApplicationRepository
} // namespace Aws

View File

@@ -0,0 +1,117 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/serverlessrepo/ServerlessApplicationRepository_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/serverlessrepo/model/ApplicationSummary.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace ServerlessApplicationRepository
{
namespace Model
{
class AWS_SERVERLESSAPPLICATIONREPOSITORY_API ListApplicationsResult
{
public:
ListApplicationsResult();
ListApplicationsResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
ListApplicationsResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>An array of application summaries.</p>
*/
inline const Aws::Vector<ApplicationSummary>& GetApplications() const{ return m_applications; }
/**
* <p>An array of application summaries.</p>
*/
inline void SetApplications(const Aws::Vector<ApplicationSummary>& value) { m_applications = value; }
/**
* <p>An array of application summaries.</p>
*/
inline void SetApplications(Aws::Vector<ApplicationSummary>&& value) { m_applications = std::move(value); }
/**
* <p>An array of application summaries.</p>
*/
inline ListApplicationsResult& WithApplications(const Aws::Vector<ApplicationSummary>& value) { SetApplications(value); return *this;}
/**
* <p>An array of application summaries.</p>
*/
inline ListApplicationsResult& WithApplications(Aws::Vector<ApplicationSummary>&& value) { SetApplications(std::move(value)); return *this;}
/**
* <p>An array of application summaries.</p>
*/
inline ListApplicationsResult& AddApplications(const ApplicationSummary& value) { m_applications.push_back(value); return *this; }
/**
* <p>An array of application summaries.</p>
*/
inline ListApplicationsResult& AddApplications(ApplicationSummary&& value) { m_applications.push_back(std::move(value)); return *this; }
/**
* <p>The token to request the next page of results.</p>
*/
inline const Aws::String& GetNextToken() const{ return m_nextToken; }
/**
* <p>The token to request the next page of results.</p>
*/
inline void SetNextToken(const Aws::String& value) { m_nextToken = value; }
/**
* <p>The token to request the next page of results.</p>
*/
inline void SetNextToken(Aws::String&& value) { m_nextToken = std::move(value); }
/**
* <p>The token to request the next page of results.</p>
*/
inline void SetNextToken(const char* value) { m_nextToken.assign(value); }
/**
* <p>The token to request the next page of results.</p>
*/
inline ListApplicationsResult& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;}
/**
* <p>The token to request the next page of results.</p>
*/
inline ListApplicationsResult& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;}
/**
* <p>The token to request the next page of results.</p>
*/
inline ListApplicationsResult& WithNextToken(const char* value) { SetNextToken(value); return *this;}
private:
Aws::Vector<ApplicationSummary> m_applications;
Aws::String m_nextToken;
};
} // namespace Model
} // namespace ServerlessApplicationRepository
} // 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/serverlessrepo/ServerlessApplicationRepository_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 ServerlessApplicationRepository
{
namespace Model
{
/**
* <p>The resource (for example, an access policy statement) specified in the
* request doesn't exist.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/NotFoundException">AWS
* API Reference</a></p>
*/
class AWS_SERVERLESSAPPLICATIONREPOSITORY_API NotFoundException
{
public:
NotFoundException();
NotFoundException(Aws::Utils::Json::JsonView jsonValue);
NotFoundException& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>404</p>
*/
inline const Aws::String& GetErrorCode() const{ return m_errorCode; }
/**
* <p>404</p>
*/
inline bool ErrorCodeHasBeenSet() const { return m_errorCodeHasBeenSet; }
/**
* <p>404</p>
*/
inline void SetErrorCode(const Aws::String& value) { m_errorCodeHasBeenSet = true; m_errorCode = value; }
/**
* <p>404</p>
*/
inline void SetErrorCode(Aws::String&& value) { m_errorCodeHasBeenSet = true; m_errorCode = std::move(value); }
/**
* <p>404</p>
*/
inline void SetErrorCode(const char* value) { m_errorCodeHasBeenSet = true; m_errorCode.assign(value); }
/**
* <p>404</p>
*/
inline NotFoundException& WithErrorCode(const Aws::String& value) { SetErrorCode(value); return *this;}
/**
* <p>404</p>
*/
inline NotFoundException& WithErrorCode(Aws::String&& value) { SetErrorCode(std::move(value)); return *this;}
/**
* <p>404</p>
*/
inline NotFoundException& WithErrorCode(const char* value) { SetErrorCode(value); return *this;}
/**
* <p>The resource (for example, an access policy statement) specified in the
* request doesn't exist.</p>
*/
inline const Aws::String& GetMessage() const{ return m_message; }
/**
* <p>The resource (for example, an access policy statement) specified in the
* request doesn't exist.</p>
*/
inline bool MessageHasBeenSet() const { return m_messageHasBeenSet; }
/**
* <p>The resource (for example, an access policy statement) specified in the
* request doesn't exist.</p>
*/
inline void SetMessage(const Aws::String& value) { m_messageHasBeenSet = true; m_message = value; }
/**
* <p>The resource (for example, an access policy statement) specified in the
* request doesn't exist.</p>
*/
inline void SetMessage(Aws::String&& value) { m_messageHasBeenSet = true; m_message = std::move(value); }
/**
* <p>The resource (for example, an access policy statement) specified in the
* request doesn't exist.</p>
*/
inline void SetMessage(const char* value) { m_messageHasBeenSet = true; m_message.assign(value); }
/**
* <p>The resource (for example, an access policy statement) specified in the
* request doesn't exist.</p>
*/
inline NotFoundException& WithMessage(const Aws::String& value) { SetMessage(value); return *this;}
/**
* <p>The resource (for example, an access policy statement) specified in the
* request doesn't exist.</p>
*/
inline NotFoundException& WithMessage(Aws::String&& value) { SetMessage(std::move(value)); return *this;}
/**
* <p>The resource (for example, an access policy statement) specified in the
* request doesn't exist.</p>
*/
inline NotFoundException& WithMessage(const char* value) { SetMessage(value); return *this;}
private:
Aws::String m_errorCode;
bool m_errorCodeHasBeenSet;
Aws::String m_message;
bool m_messageHasBeenSet;
};
} // namespace Model
} // namespace ServerlessApplicationRepository
} // namespace Aws

View File

@@ -0,0 +1,891 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/serverlessrepo/ServerlessApplicationRepository_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 ServerlessApplicationRepository
{
namespace Model
{
/**
* <p>Parameters supported by the application.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/ParameterDefinition">AWS
* API Reference</a></p>
*/
class AWS_SERVERLESSAPPLICATIONREPOSITORY_API ParameterDefinition
{
public:
ParameterDefinition();
ParameterDefinition(Aws::Utils::Json::JsonView jsonValue);
ParameterDefinition& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>A regular expression that represents the patterns to allow for String
* types.</p>
*/
inline const Aws::String& GetAllowedPattern() const{ return m_allowedPattern; }
/**
* <p>A regular expression that represents the patterns to allow for String
* types.</p>
*/
inline bool AllowedPatternHasBeenSet() const { return m_allowedPatternHasBeenSet; }
/**
* <p>A regular expression that represents the patterns to allow for String
* types.</p>
*/
inline void SetAllowedPattern(const Aws::String& value) { m_allowedPatternHasBeenSet = true; m_allowedPattern = value; }
/**
* <p>A regular expression that represents the patterns to allow for String
* types.</p>
*/
inline void SetAllowedPattern(Aws::String&& value) { m_allowedPatternHasBeenSet = true; m_allowedPattern = std::move(value); }
/**
* <p>A regular expression that represents the patterns to allow for String
* types.</p>
*/
inline void SetAllowedPattern(const char* value) { m_allowedPatternHasBeenSet = true; m_allowedPattern.assign(value); }
/**
* <p>A regular expression that represents the patterns to allow for String
* types.</p>
*/
inline ParameterDefinition& WithAllowedPattern(const Aws::String& value) { SetAllowedPattern(value); return *this;}
/**
* <p>A regular expression that represents the patterns to allow for String
* types.</p>
*/
inline ParameterDefinition& WithAllowedPattern(Aws::String&& value) { SetAllowedPattern(std::move(value)); return *this;}
/**
* <p>A regular expression that represents the patterns to allow for String
* types.</p>
*/
inline ParameterDefinition& WithAllowedPattern(const char* value) { SetAllowedPattern(value); return *this;}
/**
* <p>An array containing the list of values allowed for the parameter.</p>
*/
inline const Aws::Vector<Aws::String>& GetAllowedValues() const{ return m_allowedValues; }
/**
* <p>An array containing the list of values allowed for the parameter.</p>
*/
inline bool AllowedValuesHasBeenSet() const { return m_allowedValuesHasBeenSet; }
/**
* <p>An array containing the list of values allowed for the parameter.</p>
*/
inline void SetAllowedValues(const Aws::Vector<Aws::String>& value) { m_allowedValuesHasBeenSet = true; m_allowedValues = value; }
/**
* <p>An array containing the list of values allowed for the parameter.</p>
*/
inline void SetAllowedValues(Aws::Vector<Aws::String>&& value) { m_allowedValuesHasBeenSet = true; m_allowedValues = std::move(value); }
/**
* <p>An array containing the list of values allowed for the parameter.</p>
*/
inline ParameterDefinition& WithAllowedValues(const Aws::Vector<Aws::String>& value) { SetAllowedValues(value); return *this;}
/**
* <p>An array containing the list of values allowed for the parameter.</p>
*/
inline ParameterDefinition& WithAllowedValues(Aws::Vector<Aws::String>&& value) { SetAllowedValues(std::move(value)); return *this;}
/**
* <p>An array containing the list of values allowed for the parameter.</p>
*/
inline ParameterDefinition& AddAllowedValues(const Aws::String& value) { m_allowedValuesHasBeenSet = true; m_allowedValues.push_back(value); return *this; }
/**
* <p>An array containing the list of values allowed for the parameter.</p>
*/
inline ParameterDefinition& AddAllowedValues(Aws::String&& value) { m_allowedValuesHasBeenSet = true; m_allowedValues.push_back(std::move(value)); return *this; }
/**
* <p>An array containing the list of values allowed for the parameter.</p>
*/
inline ParameterDefinition& AddAllowedValues(const char* value) { m_allowedValuesHasBeenSet = true; m_allowedValues.push_back(value); return *this; }
/**
* <p>A string that explains a constraint when the constraint is violated. For
* example, without a constraint description,
a parameter that has an allowed
* pattern of [A-Za-z0-9]+ displays the following error message when the user
* specifies an invalid value:</p><p>
Malformed input-Parameter MyParameter must
* match pattern [A-Za-z0-9]+
</p><p>By adding a constraint description, such as
* "must contain only uppercase and lowercase letters and numbers," you can
* display
the following customized error message:</p><p>
Malformed
* input-Parameter MyParameter must contain only uppercase and lowercase letters
* and numbers.
</p>
*/
inline const Aws::String& GetConstraintDescription() const{ return m_constraintDescription; }
/**
* <p>A string that explains a constraint when the constraint is violated. For
* example, without a constraint description,
a parameter that has an allowed
* pattern of [A-Za-z0-9]+ displays the following error message when the user
* specifies an invalid value:</p><p>
Malformed input-Parameter MyParameter must
* match pattern [A-Za-z0-9]+
</p><p>By adding a constraint description, such as
* "must contain only uppercase and lowercase letters and numbers," you can
* display
the following customized error message:</p><p>
Malformed
* input-Parameter MyParameter must contain only uppercase and lowercase letters
* and numbers.
</p>
*/
inline bool ConstraintDescriptionHasBeenSet() const { return m_constraintDescriptionHasBeenSet; }
/**
* <p>A string that explains a constraint when the constraint is violated. For
* example, without a constraint description,
a parameter that has an allowed
* pattern of [A-Za-z0-9]+ displays the following error message when the user
* specifies an invalid value:</p><p>
Malformed input-Parameter MyParameter must
* match pattern [A-Za-z0-9]+
</p><p>By adding a constraint description, such as
* "must contain only uppercase and lowercase letters and numbers," you can
* display
the following customized error message:</p><p>
Malformed
* input-Parameter MyParameter must contain only uppercase and lowercase letters
* and numbers.
</p>
*/
inline void SetConstraintDescription(const Aws::String& value) { m_constraintDescriptionHasBeenSet = true; m_constraintDescription = value; }
/**
* <p>A string that explains a constraint when the constraint is violated. For
* example, without a constraint description,
a parameter that has an allowed
* pattern of [A-Za-z0-9]+ displays the following error message when the user
* specifies an invalid value:</p><p>
Malformed input-Parameter MyParameter must
* match pattern [A-Za-z0-9]+
</p><p>By adding a constraint description, such as
* "must contain only uppercase and lowercase letters and numbers," you can
* display
the following customized error message:</p><p>
Malformed
* input-Parameter MyParameter must contain only uppercase and lowercase letters
* and numbers.
</p>
*/
inline void SetConstraintDescription(Aws::String&& value) { m_constraintDescriptionHasBeenSet = true; m_constraintDescription = std::move(value); }
/**
* <p>A string that explains a constraint when the constraint is violated. For
* example, without a constraint description,
a parameter that has an allowed
* pattern of [A-Za-z0-9]+ displays the following error message when the user
* specifies an invalid value:</p><p>
Malformed input-Parameter MyParameter must
* match pattern [A-Za-z0-9]+
</p><p>By adding a constraint description, such as
* "must contain only uppercase and lowercase letters and numbers," you can
* display
the following customized error message:</p><p>
Malformed
* input-Parameter MyParameter must contain only uppercase and lowercase letters
* and numbers.
</p>
*/
inline void SetConstraintDescription(const char* value) { m_constraintDescriptionHasBeenSet = true; m_constraintDescription.assign(value); }
/**
* <p>A string that explains a constraint when the constraint is violated. For
* example, without a constraint description,
a parameter that has an allowed
* pattern of [A-Za-z0-9]+ displays the following error message when the user
* specifies an invalid value:</p><p>
Malformed input-Parameter MyParameter must
* match pattern [A-Za-z0-9]+
</p><p>By adding a constraint description, such as
* "must contain only uppercase and lowercase letters and numbers," you can
* display
the following customized error message:</p><p>
Malformed
* input-Parameter MyParameter must contain only uppercase and lowercase letters
* and numbers.
</p>
*/
inline ParameterDefinition& WithConstraintDescription(const Aws::String& value) { SetConstraintDescription(value); return *this;}
/**
* <p>A string that explains a constraint when the constraint is violated. For
* example, without a constraint description,
a parameter that has an allowed
* pattern of [A-Za-z0-9]+ displays the following error message when the user
* specifies an invalid value:</p><p>
Malformed input-Parameter MyParameter must
* match pattern [A-Za-z0-9]+
</p><p>By adding a constraint description, such as
* "must contain only uppercase and lowercase letters and numbers," you can
* display
the following customized error message:</p><p>
Malformed
* input-Parameter MyParameter must contain only uppercase and lowercase letters
* and numbers.
</p>
*/
inline ParameterDefinition& WithConstraintDescription(Aws::String&& value) { SetConstraintDescription(std::move(value)); return *this;}
/**
* <p>A string that explains a constraint when the constraint is violated. For
* example, without a constraint description,
a parameter that has an allowed
* pattern of [A-Za-z0-9]+ displays the following error message when the user
* specifies an invalid value:</p><p>
Malformed input-Parameter MyParameter must
* match pattern [A-Za-z0-9]+
</p><p>By adding a constraint description, such as
* "must contain only uppercase and lowercase letters and numbers," you can
* display
the following customized error message:</p><p>
Malformed
* input-Parameter MyParameter must contain only uppercase and lowercase letters
* and numbers.
</p>
*/
inline ParameterDefinition& WithConstraintDescription(const char* value) { SetConstraintDescription(value); return *this;}
/**
* <p>A value of the appropriate type for the template to use if no value is
* specified when a stack is created.
If you define constraints for the parameter,
* you must specify a value that adheres to those constraints.</p>
*/
inline const Aws::String& GetDefaultValue() const{ return m_defaultValue; }
/**
* <p>A value of the appropriate type for the template to use if no value is
* specified when a stack is created.
If you define constraints for the parameter,
* you must specify a value that adheres to those constraints.</p>
*/
inline bool DefaultValueHasBeenSet() const { return m_defaultValueHasBeenSet; }
/**
* <p>A value of the appropriate type for the template to use if no value is
* specified when a stack is created.
If you define constraints for the parameter,
* you must specify a value that adheres to those constraints.</p>
*/
inline void SetDefaultValue(const Aws::String& value) { m_defaultValueHasBeenSet = true; m_defaultValue = value; }
/**
* <p>A value of the appropriate type for the template to use if no value is
* specified when a stack is created.
If you define constraints for the parameter,
* you must specify a value that adheres to those constraints.</p>
*/
inline void SetDefaultValue(Aws::String&& value) { m_defaultValueHasBeenSet = true; m_defaultValue = std::move(value); }
/**
* <p>A value of the appropriate type for the template to use if no value is
* specified when a stack is created.
If you define constraints for the parameter,
* you must specify a value that adheres to those constraints.</p>
*/
inline void SetDefaultValue(const char* value) { m_defaultValueHasBeenSet = true; m_defaultValue.assign(value); }
/**
* <p>A value of the appropriate type for the template to use if no value is
* specified when a stack is created.
If you define constraints for the parameter,
* you must specify a value that adheres to those constraints.</p>
*/
inline ParameterDefinition& WithDefaultValue(const Aws::String& value) { SetDefaultValue(value); return *this;}
/**
* <p>A value of the appropriate type for the template to use if no value is
* specified when a stack is created.
If you define constraints for the parameter,
* you must specify a value that adheres to those constraints.</p>
*/
inline ParameterDefinition& WithDefaultValue(Aws::String&& value) { SetDefaultValue(std::move(value)); return *this;}
/**
* <p>A value of the appropriate type for the template to use if no value is
* specified when a stack is created.
If you define constraints for the parameter,
* you must specify a value that adheres to those constraints.</p>
*/
inline ParameterDefinition& WithDefaultValue(const char* value) { SetDefaultValue(value); return *this;}
/**
* <p>A string of up to 4,000 characters that describes the parameter.</p>
*/
inline const Aws::String& GetDescription() const{ return m_description; }
/**
* <p>A string of up to 4,000 characters that describes the parameter.</p>
*/
inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
/**
* <p>A string of up to 4,000 characters that describes the parameter.</p>
*/
inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; }
/**
* <p>A string of up to 4,000 characters that describes the parameter.</p>
*/
inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); }
/**
* <p>A string of up to 4,000 characters that describes the parameter.</p>
*/
inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); }
/**
* <p>A string of up to 4,000 characters that describes the parameter.</p>
*/
inline ParameterDefinition& WithDescription(const Aws::String& value) { SetDescription(value); return *this;}
/**
* <p>A string of up to 4,000 characters that describes the parameter.</p>
*/
inline ParameterDefinition& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;}
/**
* <p>A string of up to 4,000 characters that describes the parameter.</p>
*/
inline ParameterDefinition& WithDescription(const char* value) { SetDescription(value); return *this;}
/**
* <p>An integer value that determines the largest number of characters that you
* want to allow for String types.</p>
*/
inline int GetMaxLength() const{ return m_maxLength; }
/**
* <p>An integer value that determines the largest number of characters that you
* want to allow for String types.</p>
*/
inline bool MaxLengthHasBeenSet() const { return m_maxLengthHasBeenSet; }
/**
* <p>An integer value that determines the largest number of characters that you
* want to allow for String types.</p>
*/
inline void SetMaxLength(int value) { m_maxLengthHasBeenSet = true; m_maxLength = value; }
/**
* <p>An integer value that determines the largest number of characters that you
* want to allow for String types.</p>
*/
inline ParameterDefinition& WithMaxLength(int value) { SetMaxLength(value); return *this;}
/**
* <p>A numeric value that determines the largest numeric value that you want to
* allow for Number types.</p>
*/
inline int GetMaxValue() const{ return m_maxValue; }
/**
* <p>A numeric value that determines the largest numeric value that you want to
* allow for Number types.</p>
*/
inline bool MaxValueHasBeenSet() const { return m_maxValueHasBeenSet; }
/**
* <p>A numeric value that determines the largest numeric value that you want to
* allow for Number types.</p>
*/
inline void SetMaxValue(int value) { m_maxValueHasBeenSet = true; m_maxValue = value; }
/**
* <p>A numeric value that determines the largest numeric value that you want to
* allow for Number types.</p>
*/
inline ParameterDefinition& WithMaxValue(int value) { SetMaxValue(value); return *this;}
/**
* <p>An integer value that determines the smallest number of characters that you
* want to allow for String types.</p>
*/
inline int GetMinLength() const{ return m_minLength; }
/**
* <p>An integer value that determines the smallest number of characters that you
* want to allow for String types.</p>
*/
inline bool MinLengthHasBeenSet() const { return m_minLengthHasBeenSet; }
/**
* <p>An integer value that determines the smallest number of characters that you
* want to allow for String types.</p>
*/
inline void SetMinLength(int value) { m_minLengthHasBeenSet = true; m_minLength = value; }
/**
* <p>An integer value that determines the smallest number of characters that you
* want to allow for String types.</p>
*/
inline ParameterDefinition& WithMinLength(int value) { SetMinLength(value); return *this;}
/**
* <p>A numeric value that determines the smallest numeric value that you want to
* allow for Number types.</p>
*/
inline int GetMinValue() const{ return m_minValue; }
/**
* <p>A numeric value that determines the smallest numeric value that you want to
* allow for Number types.</p>
*/
inline bool MinValueHasBeenSet() const { return m_minValueHasBeenSet; }
/**
* <p>A numeric value that determines the smallest numeric value that you want to
* allow for Number types.</p>
*/
inline void SetMinValue(int value) { m_minValueHasBeenSet = true; m_minValue = value; }
/**
* <p>A numeric value that determines the smallest numeric value that you want to
* allow for Number types.</p>
*/
inline ParameterDefinition& WithMinValue(int value) { SetMinValue(value); return *this;}
/**
* <p>The name of the parameter.</p>
*/
inline const Aws::String& GetName() const{ return m_name; }
/**
* <p>The name of the parameter.</p>
*/
inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
/**
* <p>The name of the parameter.</p>
*/
inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; }
/**
* <p>The name of the parameter.</p>
*/
inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); }
/**
* <p>The name of the parameter.</p>
*/
inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); }
/**
* <p>The name of the parameter.</p>
*/
inline ParameterDefinition& WithName(const Aws::String& value) { SetName(value); return *this;}
/**
* <p>The name of the parameter.</p>
*/
inline ParameterDefinition& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;}
/**
* <p>The name of the parameter.</p>
*/
inline ParameterDefinition& WithName(const char* value) { SetName(value); return *this;}
/**
* <p>Whether to mask the parameter value whenever anyone makes a call that
* describes the stack. If you set the
value to true, the parameter value is
* masked with asterisks (*****).</p>
*/
inline bool GetNoEcho() const{ return m_noEcho; }
/**
* <p>Whether to mask the parameter value whenever anyone makes a call that
* describes the stack. If you set the
value to true, the parameter value is
* masked with asterisks (*****).</p>
*/
inline bool NoEchoHasBeenSet() const { return m_noEchoHasBeenSet; }
/**
* <p>Whether to mask the parameter value whenever anyone makes a call that
* describes the stack. If you set the
value to true, the parameter value is
* masked with asterisks (*****).</p>
*/
inline void SetNoEcho(bool value) { m_noEchoHasBeenSet = true; m_noEcho = value; }
/**
* <p>Whether to mask the parameter value whenever anyone makes a call that
* describes the stack. If you set the
value to true, the parameter value is
* masked with asterisks (*****).</p>
*/
inline ParameterDefinition& WithNoEcho(bool value) { SetNoEcho(value); return *this;}
/**
* <p>A list of AWS SAM resources that use this parameter.</p>
*/
inline const Aws::Vector<Aws::String>& GetReferencedByResources() const{ return m_referencedByResources; }
/**
* <p>A list of AWS SAM resources that use this parameter.</p>
*/
inline bool ReferencedByResourcesHasBeenSet() const { return m_referencedByResourcesHasBeenSet; }
/**
* <p>A list of AWS SAM resources that use this parameter.</p>
*/
inline void SetReferencedByResources(const Aws::Vector<Aws::String>& value) { m_referencedByResourcesHasBeenSet = true; m_referencedByResources = value; }
/**
* <p>A list of AWS SAM resources that use this parameter.</p>
*/
inline void SetReferencedByResources(Aws::Vector<Aws::String>&& value) { m_referencedByResourcesHasBeenSet = true; m_referencedByResources = std::move(value); }
/**
* <p>A list of AWS SAM resources that use this parameter.</p>
*/
inline ParameterDefinition& WithReferencedByResources(const Aws::Vector<Aws::String>& value) { SetReferencedByResources(value); return *this;}
/**
* <p>A list of AWS SAM resources that use this parameter.</p>
*/
inline ParameterDefinition& WithReferencedByResources(Aws::Vector<Aws::String>&& value) { SetReferencedByResources(std::move(value)); return *this;}
/**
* <p>A list of AWS SAM resources that use this parameter.</p>
*/
inline ParameterDefinition& AddReferencedByResources(const Aws::String& value) { m_referencedByResourcesHasBeenSet = true; m_referencedByResources.push_back(value); return *this; }
/**
* <p>A list of AWS SAM resources that use this parameter.</p>
*/
inline ParameterDefinition& AddReferencedByResources(Aws::String&& value) { m_referencedByResourcesHasBeenSet = true; m_referencedByResources.push_back(std::move(value)); return *this; }
/**
* <p>A list of AWS SAM resources that use this parameter.</p>
*/
inline ParameterDefinition& AddReferencedByResources(const char* value) { m_referencedByResourcesHasBeenSet = true; m_referencedByResources.push_back(value); return *this; }
/**
* <p>The type of the parameter.</p><p>Valid values: String | Number |
* List&lt;Number> | CommaDelimitedList
</p><p>
String: A literal
* string.</p><p>For example, users can specify "MyUserName".</p><p>
Number: An
* integer or float. AWS CloudFormation validates the parameter value as a number.
* However, when you use the
parameter elsewhere in your template (for example, by
* using the Ref intrinsic function), the parameter value becomes a
* string.</p><p>For example, users might specify "8888".</p><p>
List&lt;Number>:
* An array of integers or floats that are separated by commas. AWS CloudFormation
* validates the parameter value as numbers. However, when
you use the parameter
* elsewhere in your template (for example, by using the Ref intrinsic function),
* the parameter value becomes a list of strings.</p><p>For example, users might
* specify "80,20", and then Ref results in ["80","20"].</p><p>
* CommaDelimitedList: An array of literal strings that are separated by commas.
* The total number of strings should be one more than the total number of commas.
* Also, each member string is space-trimmed.</p><p>For example, users might
* specify "test,dev,prod", and then Ref results in ["test","dev","prod"].</p>
*/
inline const Aws::String& GetType() const{ return m_type; }
/**
* <p>The type of the parameter.</p><p>Valid values: String | Number |
* List&lt;Number> | CommaDelimitedList
</p><p>
String: A literal
* string.</p><p>For example, users can specify "MyUserName".</p><p>
Number: An
* integer or float. AWS CloudFormation validates the parameter value as a number.
* However, when you use the
parameter elsewhere in your template (for example, by
* using the Ref intrinsic function), the parameter value becomes a
* string.</p><p>For example, users might specify "8888".</p><p>
List&lt;Number>:
* An array of integers or floats that are separated by commas. AWS CloudFormation
* validates the parameter value as numbers. However, when
you use the parameter
* elsewhere in your template (for example, by using the Ref intrinsic function),
* the parameter value becomes a list of strings.</p><p>For example, users might
* specify "80,20", and then Ref results in ["80","20"].</p><p>
* CommaDelimitedList: An array of literal strings that are separated by commas.
* The total number of strings should be one more than the total number of commas.
* Also, each member string is space-trimmed.</p><p>For example, users might
* specify "test,dev,prod", and then Ref results in ["test","dev","prod"].</p>
*/
inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
/**
* <p>The type of the parameter.</p><p>Valid values: String | Number |
* List&lt;Number> | CommaDelimitedList
</p><p>
String: A literal
* string.</p><p>For example, users can specify "MyUserName".</p><p>
Number: An
* integer or float. AWS CloudFormation validates the parameter value as a number.
* However, when you use the
parameter elsewhere in your template (for example, by
* using the Ref intrinsic function), the parameter value becomes a
* string.</p><p>For example, users might specify "8888".</p><p>
List&lt;Number>:
* An array of integers or floats that are separated by commas. AWS CloudFormation
* validates the parameter value as numbers. However, when
you use the parameter
* elsewhere in your template (for example, by using the Ref intrinsic function),
* the parameter value becomes a list of strings.</p><p>For example, users might
* specify "80,20", and then Ref results in ["80","20"].</p><p>
* CommaDelimitedList: An array of literal strings that are separated by commas.
* The total number of strings should be one more than the total number of commas.
* Also, each member string is space-trimmed.</p><p>For example, users might
* specify "test,dev,prod", and then Ref results in ["test","dev","prod"].</p>
*/
inline void SetType(const Aws::String& value) { m_typeHasBeenSet = true; m_type = value; }
/**
* <p>The type of the parameter.</p><p>Valid values: String | Number |
* List&lt;Number> | CommaDelimitedList
</p><p>
String: A literal
* string.</p><p>For example, users can specify "MyUserName".</p><p>
Number: An
* integer or float. AWS CloudFormation validates the parameter value as a number.
* However, when you use the
parameter elsewhere in your template (for example, by
* using the Ref intrinsic function), the parameter value becomes a
* string.</p><p>For example, users might specify "8888".</p><p>
List&lt;Number>:
* An array of integers or floats that are separated by commas. AWS CloudFormation
* validates the parameter value as numbers. However, when
you use the parameter
* elsewhere in your template (for example, by using the Ref intrinsic function),
* the parameter value becomes a list of strings.</p><p>For example, users might
* specify "80,20", and then Ref results in ["80","20"].</p><p>
* CommaDelimitedList: An array of literal strings that are separated by commas.
* The total number of strings should be one more than the total number of commas.
* Also, each member string is space-trimmed.</p><p>For example, users might
* specify "test,dev,prod", and then Ref results in ["test","dev","prod"].</p>
*/
inline void SetType(Aws::String&& value) { m_typeHasBeenSet = true; m_type = std::move(value); }
/**
* <p>The type of the parameter.</p><p>Valid values: String | Number |
* List&lt;Number> | CommaDelimitedList
</p><p>
String: A literal
* string.</p><p>For example, users can specify "MyUserName".</p><p>
Number: An
* integer or float. AWS CloudFormation validates the parameter value as a number.
* However, when you use the
parameter elsewhere in your template (for example, by
* using the Ref intrinsic function), the parameter value becomes a
* string.</p><p>For example, users might specify "8888".</p><p>
List&lt;Number>:
* An array of integers or floats that are separated by commas. AWS CloudFormation
* validates the parameter value as numbers. However, when
you use the parameter
* elsewhere in your template (for example, by using the Ref intrinsic function),
* the parameter value becomes a list of strings.</p><p>For example, users might
* specify "80,20", and then Ref results in ["80","20"].</p><p>
* CommaDelimitedList: An array of literal strings that are separated by commas.
* The total number of strings should be one more than the total number of commas.
* Also, each member string is space-trimmed.</p><p>For example, users might
* specify "test,dev,prod", and then Ref results in ["test","dev","prod"].</p>
*/
inline void SetType(const char* value) { m_typeHasBeenSet = true; m_type.assign(value); }
/**
* <p>The type of the parameter.</p><p>Valid values: String | Number |
* List&lt;Number> | CommaDelimitedList
</p><p>
String: A literal
* string.</p><p>For example, users can specify "MyUserName".</p><p>
Number: An
* integer or float. AWS CloudFormation validates the parameter value as a number.
* However, when you use the
parameter elsewhere in your template (for example, by
* using the Ref intrinsic function), the parameter value becomes a
* string.</p><p>For example, users might specify "8888".</p><p>
List&lt;Number>:
* An array of integers or floats that are separated by commas. AWS CloudFormation
* validates the parameter value as numbers. However, when
you use the parameter
* elsewhere in your template (for example, by using the Ref intrinsic function),
* the parameter value becomes a list of strings.</p><p>For example, users might
* specify "80,20", and then Ref results in ["80","20"].</p><p>
* CommaDelimitedList: An array of literal strings that are separated by commas.
* The total number of strings should be one more than the total number of commas.
* Also, each member string is space-trimmed.</p><p>For example, users might
* specify "test,dev,prod", and then Ref results in ["test","dev","prod"].</p>
*/
inline ParameterDefinition& WithType(const Aws::String& value) { SetType(value); return *this;}
/**
* <p>The type of the parameter.</p><p>Valid values: String | Number |
* List&lt;Number> | CommaDelimitedList
</p><p>
String: A literal
* string.</p><p>For example, users can specify "MyUserName".</p><p>
Number: An
* integer or float. AWS CloudFormation validates the parameter value as a number.
* However, when you use the
parameter elsewhere in your template (for example, by
* using the Ref intrinsic function), the parameter value becomes a
* string.</p><p>For example, users might specify "8888".</p><p>
List&lt;Number>:
* An array of integers or floats that are separated by commas. AWS CloudFormation
* validates the parameter value as numbers. However, when
you use the parameter
* elsewhere in your template (for example, by using the Ref intrinsic function),
* the parameter value becomes a list of strings.</p><p>For example, users might
* specify "80,20", and then Ref results in ["80","20"].</p><p>
* CommaDelimitedList: An array of literal strings that are separated by commas.
* The total number of strings should be one more than the total number of commas.
* Also, each member string is space-trimmed.</p><p>For example, users might
* specify "test,dev,prod", and then Ref results in ["test","dev","prod"].</p>
*/
inline ParameterDefinition& WithType(Aws::String&& value) { SetType(std::move(value)); return *this;}
/**
* <p>The type of the parameter.</p><p>Valid values: String | Number |
* List&lt;Number> | CommaDelimitedList
</p><p>
String: A literal
* string.</p><p>For example, users can specify "MyUserName".</p><p>
Number: An
* integer or float. AWS CloudFormation validates the parameter value as a number.
* However, when you use the
parameter elsewhere in your template (for example, by
* using the Ref intrinsic function), the parameter value becomes a
* string.</p><p>For example, users might specify "8888".</p><p>
List&lt;Number>:
* An array of integers or floats that are separated by commas. AWS CloudFormation
* validates the parameter value as numbers. However, when
you use the parameter
* elsewhere in your template (for example, by using the Ref intrinsic function),
* the parameter value becomes a list of strings.</p><p>For example, users might
* specify "80,20", and then Ref results in ["80","20"].</p><p>
* CommaDelimitedList: An array of literal strings that are separated by commas.
* The total number of strings should be one more than the total number of commas.
* Also, each member string is space-trimmed.</p><p>For example, users might
* specify "test,dev,prod", and then Ref results in ["test","dev","prod"].</p>
*/
inline ParameterDefinition& WithType(const char* value) { SetType(value); return *this;}
private:
Aws::String m_allowedPattern;
bool m_allowedPatternHasBeenSet;
Aws::Vector<Aws::String> m_allowedValues;
bool m_allowedValuesHasBeenSet;
Aws::String m_constraintDescription;
bool m_constraintDescriptionHasBeenSet;
Aws::String m_defaultValue;
bool m_defaultValueHasBeenSet;
Aws::String m_description;
bool m_descriptionHasBeenSet;
int m_maxLength;
bool m_maxLengthHasBeenSet;
int m_maxValue;
bool m_maxValueHasBeenSet;
int m_minLength;
bool m_minLengthHasBeenSet;
int m_minValue;
bool m_minValueHasBeenSet;
Aws::String m_name;
bool m_nameHasBeenSet;
bool m_noEcho;
bool m_noEchoHasBeenSet;
Aws::Vector<Aws::String> m_referencedByResources;
bool m_referencedByResourcesHasBeenSet;
Aws::String m_type;
bool m_typeHasBeenSet;
};
} // namespace Model
} // namespace ServerlessApplicationRepository
} // namespace Aws

View File

@@ -0,0 +1,156 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/serverlessrepo/ServerlessApplicationRepository_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 ServerlessApplicationRepository
{
namespace Model
{
/**
* <p>Parameter value of the application.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/ParameterValue">AWS
* API Reference</a></p>
*/
class AWS_SERVERLESSAPPLICATIONREPOSITORY_API ParameterValue
{
public:
ParameterValue();
ParameterValue(Aws::Utils::Json::JsonView jsonValue);
ParameterValue& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>The key associated with the parameter. If you don't specify a key and value
* for a particular parameter, AWS CloudFormation
uses the default value that is
* specified in your template.</p>
*/
inline const Aws::String& GetName() const{ return m_name; }
/**
* <p>The key associated with the parameter. If you don't specify a key and value
* for a particular parameter, AWS CloudFormation
uses the default value that is
* specified in your template.</p>
*/
inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
/**
* <p>The key associated with the parameter. If you don't specify a key and value
* for a particular parameter, AWS CloudFormation
uses the default value that is
* specified in your template.</p>
*/
inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; }
/**
* <p>The key associated with the parameter. If you don't specify a key and value
* for a particular parameter, AWS CloudFormation
uses the default value that is
* specified in your template.</p>
*/
inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); }
/**
* <p>The key associated with the parameter. If you don't specify a key and value
* for a particular parameter, AWS CloudFormation
uses the default value that is
* specified in your template.</p>
*/
inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); }
/**
* <p>The key associated with the parameter. If you don't specify a key and value
* for a particular parameter, AWS CloudFormation
uses the default value that is
* specified in your template.</p>
*/
inline ParameterValue& WithName(const Aws::String& value) { SetName(value); return *this;}
/**
* <p>The key associated with the parameter. If you don't specify a key and value
* for a particular parameter, AWS CloudFormation
uses the default value that is
* specified in your template.</p>
*/
inline ParameterValue& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;}
/**
* <p>The key associated with the parameter. If you don't specify a key and value
* for a particular parameter, AWS CloudFormation
uses the default value that is
* specified in your template.</p>
*/
inline ParameterValue& WithName(const char* value) { SetName(value); return *this;}
/**
* <p>The input value associated with the parameter.</p>
*/
inline const Aws::String& GetValue() const{ return m_value; }
/**
* <p>The input value associated with the parameter.</p>
*/
inline bool ValueHasBeenSet() const { return m_valueHasBeenSet; }
/**
* <p>The input value associated with the parameter.</p>
*/
inline void SetValue(const Aws::String& value) { m_valueHasBeenSet = true; m_value = value; }
/**
* <p>The input value associated with the parameter.</p>
*/
inline void SetValue(Aws::String&& value) { m_valueHasBeenSet = true; m_value = std::move(value); }
/**
* <p>The input value associated with the parameter.</p>
*/
inline void SetValue(const char* value) { m_valueHasBeenSet = true; m_value.assign(value); }
/**
* <p>The input value associated with the parameter.</p>
*/
inline ParameterValue& WithValue(const Aws::String& value) { SetValue(value); return *this;}
/**
* <p>The input value associated with the parameter.</p>
*/
inline ParameterValue& WithValue(Aws::String&& value) { SetValue(std::move(value)); return *this;}
/**
* <p>The input value associated with the parameter.</p>
*/
inline ParameterValue& WithValue(const char* value) { SetValue(value); return *this;}
private:
Aws::String m_name;
bool m_nameHasBeenSet;
Aws::String m_value;
bool m_valueHasBeenSet;
};
} // namespace Model
} // namespace ServerlessApplicationRepository
} // namespace Aws

View File

@@ -0,0 +1,129 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/serverlessrepo/ServerlessApplicationRepository_EXPORTS.h>
#include <aws/serverlessrepo/ServerlessApplicationRepositoryRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/serverlessrepo/model/ApplicationPolicyStatement.h>
#include <utility>
namespace Aws
{
namespace ServerlessApplicationRepository
{
namespace Model
{
/**
*/
class AWS_SERVERLESSAPPLICATIONREPOSITORY_API PutApplicationPolicyRequest : public ServerlessApplicationRepositoryRequest
{
public:
PutApplicationPolicyRequest();
// 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 "PutApplicationPolicy"; }
Aws::String SerializePayload() const override;
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline const Aws::String& GetApplicationId() const{ return m_applicationId; }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline bool ApplicationIdHasBeenSet() const { return m_applicationIdHasBeenSet; }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline void SetApplicationId(const Aws::String& value) { m_applicationIdHasBeenSet = true; m_applicationId = value; }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline void SetApplicationId(Aws::String&& value) { m_applicationIdHasBeenSet = true; m_applicationId = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline void SetApplicationId(const char* value) { m_applicationIdHasBeenSet = true; m_applicationId.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline PutApplicationPolicyRequest& WithApplicationId(const Aws::String& value) { SetApplicationId(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline PutApplicationPolicyRequest& WithApplicationId(Aws::String&& value) { SetApplicationId(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline PutApplicationPolicyRequest& WithApplicationId(const char* value) { SetApplicationId(value); return *this;}
/**
* <p>An array of policy statements applied to the application.</p>
*/
inline const Aws::Vector<ApplicationPolicyStatement>& GetStatements() const{ return m_statements; }
/**
* <p>An array of policy statements applied to the application.</p>
*/
inline bool StatementsHasBeenSet() const { return m_statementsHasBeenSet; }
/**
* <p>An array of policy statements applied to the application.</p>
*/
inline void SetStatements(const Aws::Vector<ApplicationPolicyStatement>& value) { m_statementsHasBeenSet = true; m_statements = value; }
/**
* <p>An array of policy statements applied to the application.</p>
*/
inline void SetStatements(Aws::Vector<ApplicationPolicyStatement>&& value) { m_statementsHasBeenSet = true; m_statements = std::move(value); }
/**
* <p>An array of policy statements applied to the application.</p>
*/
inline PutApplicationPolicyRequest& WithStatements(const Aws::Vector<ApplicationPolicyStatement>& value) { SetStatements(value); return *this;}
/**
* <p>An array of policy statements applied to the application.</p>
*/
inline PutApplicationPolicyRequest& WithStatements(Aws::Vector<ApplicationPolicyStatement>&& value) { SetStatements(std::move(value)); return *this;}
/**
* <p>An array of policy statements applied to the application.</p>
*/
inline PutApplicationPolicyRequest& AddStatements(const ApplicationPolicyStatement& value) { m_statementsHasBeenSet = true; m_statements.push_back(value); return *this; }
/**
* <p>An array of policy statements applied to the application.</p>
*/
inline PutApplicationPolicyRequest& AddStatements(ApplicationPolicyStatement&& value) { m_statementsHasBeenSet = true; m_statements.push_back(std::move(value)); return *this; }
private:
Aws::String m_applicationId;
bool m_applicationIdHasBeenSet;
Aws::Vector<ApplicationPolicyStatement> m_statements;
bool m_statementsHasBeenSet;
};
} // namespace Model
} // namespace ServerlessApplicationRepository
} // namespace Aws

View File

@@ -0,0 +1,78 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/serverlessrepo/ServerlessApplicationRepository_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/serverlessrepo/model/ApplicationPolicyStatement.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace ServerlessApplicationRepository
{
namespace Model
{
class AWS_SERVERLESSAPPLICATIONREPOSITORY_API PutApplicationPolicyResult
{
public:
PutApplicationPolicyResult();
PutApplicationPolicyResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
PutApplicationPolicyResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>An array of policy statements applied to the application.</p>
*/
inline const Aws::Vector<ApplicationPolicyStatement>& GetStatements() const{ return m_statements; }
/**
* <p>An array of policy statements applied to the application.</p>
*/
inline void SetStatements(const Aws::Vector<ApplicationPolicyStatement>& value) { m_statements = value; }
/**
* <p>An array of policy statements applied to the application.</p>
*/
inline void SetStatements(Aws::Vector<ApplicationPolicyStatement>&& value) { m_statements = std::move(value); }
/**
* <p>An array of policy statements applied to the application.</p>
*/
inline PutApplicationPolicyResult& WithStatements(const Aws::Vector<ApplicationPolicyStatement>& value) { SetStatements(value); return *this;}
/**
* <p>An array of policy statements applied to the application.</p>
*/
inline PutApplicationPolicyResult& WithStatements(Aws::Vector<ApplicationPolicyStatement>&& value) { SetStatements(std::move(value)); return *this;}
/**
* <p>An array of policy statements applied to the application.</p>
*/
inline PutApplicationPolicyResult& AddStatements(const ApplicationPolicyStatement& value) { m_statements.push_back(value); return *this; }
/**
* <p>An array of policy statements applied to the application.</p>
*/
inline PutApplicationPolicyResult& AddStatements(ApplicationPolicyStatement&& value) { m_statements.push_back(std::move(value)); return *this; }
private:
Aws::Vector<ApplicationPolicyStatement> m_statements;
};
} // namespace Model
} // namespace ServerlessApplicationRepository
} // namespace Aws

View File

@@ -0,0 +1,164 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/serverlessrepo/ServerlessApplicationRepository_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/serverlessrepo/model/RollbackTrigger.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace ServerlessApplicationRepository
{
namespace Model
{
/**
* <p>This property corresponds to the <i>AWS CloudFormation <a
* href="https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/RollbackConfiguration">RollbackConfiguration</a>
* </i> Data Type.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/RollbackConfiguration">AWS
* API Reference</a></p>
*/
class AWS_SERVERLESSAPPLICATIONREPOSITORY_API RollbackConfiguration
{
public:
RollbackConfiguration();
RollbackConfiguration(Aws::Utils::Json::JsonView jsonValue);
RollbackConfiguration& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>This property corresponds to the content of the same name for the <i>AWS
* CloudFormation <a
* href="https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/RollbackConfiguration">RollbackConfiguration</a>
* </i> Data Type.</p>
*/
inline int GetMonitoringTimeInMinutes() const{ return m_monitoringTimeInMinutes; }
/**
* <p>This property corresponds to the content of the same name for the <i>AWS
* CloudFormation <a
* href="https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/RollbackConfiguration">RollbackConfiguration</a>
* </i> Data Type.</p>
*/
inline bool MonitoringTimeInMinutesHasBeenSet() const { return m_monitoringTimeInMinutesHasBeenSet; }
/**
* <p>This property corresponds to the content of the same name for the <i>AWS
* CloudFormation <a
* href="https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/RollbackConfiguration">RollbackConfiguration</a>
* </i> Data Type.</p>
*/
inline void SetMonitoringTimeInMinutes(int value) { m_monitoringTimeInMinutesHasBeenSet = true; m_monitoringTimeInMinutes = value; }
/**
* <p>This property corresponds to the content of the same name for the <i>AWS
* CloudFormation <a
* href="https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/RollbackConfiguration">RollbackConfiguration</a>
* </i> Data Type.</p>
*/
inline RollbackConfiguration& WithMonitoringTimeInMinutes(int value) { SetMonitoringTimeInMinutes(value); return *this;}
/**
* <p>This property corresponds to the content of the same name for the <i>AWS
* CloudFormation <a
* href="https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/RollbackConfiguration">RollbackConfiguration</a>
* </i> Data Type.</p>
*/
inline const Aws::Vector<RollbackTrigger>& GetRollbackTriggers() const{ return m_rollbackTriggers; }
/**
* <p>This property corresponds to the content of the same name for the <i>AWS
* CloudFormation <a
* href="https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/RollbackConfiguration">RollbackConfiguration</a>
* </i> Data Type.</p>
*/
inline bool RollbackTriggersHasBeenSet() const { return m_rollbackTriggersHasBeenSet; }
/**
* <p>This property corresponds to the content of the same name for the <i>AWS
* CloudFormation <a
* href="https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/RollbackConfiguration">RollbackConfiguration</a>
* </i> Data Type.</p>
*/
inline void SetRollbackTriggers(const Aws::Vector<RollbackTrigger>& value) { m_rollbackTriggersHasBeenSet = true; m_rollbackTriggers = value; }
/**
* <p>This property corresponds to the content of the same name for the <i>AWS
* CloudFormation <a
* href="https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/RollbackConfiguration">RollbackConfiguration</a>
* </i> Data Type.</p>
*/
inline void SetRollbackTriggers(Aws::Vector<RollbackTrigger>&& value) { m_rollbackTriggersHasBeenSet = true; m_rollbackTriggers = std::move(value); }
/**
* <p>This property corresponds to the content of the same name for the <i>AWS
* CloudFormation <a
* href="https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/RollbackConfiguration">RollbackConfiguration</a>
* </i> Data Type.</p>
*/
inline RollbackConfiguration& WithRollbackTriggers(const Aws::Vector<RollbackTrigger>& value) { SetRollbackTriggers(value); return *this;}
/**
* <p>This property corresponds to the content of the same name for the <i>AWS
* CloudFormation <a
* href="https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/RollbackConfiguration">RollbackConfiguration</a>
* </i> Data Type.</p>
*/
inline RollbackConfiguration& WithRollbackTriggers(Aws::Vector<RollbackTrigger>&& value) { SetRollbackTriggers(std::move(value)); return *this;}
/**
* <p>This property corresponds to the content of the same name for the <i>AWS
* CloudFormation <a
* href="https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/RollbackConfiguration">RollbackConfiguration</a>
* </i> Data Type.</p>
*/
inline RollbackConfiguration& AddRollbackTriggers(const RollbackTrigger& value) { m_rollbackTriggersHasBeenSet = true; m_rollbackTriggers.push_back(value); return *this; }
/**
* <p>This property corresponds to the content of the same name for the <i>AWS
* CloudFormation <a
* href="https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/RollbackConfiguration">RollbackConfiguration</a>
* </i> Data Type.</p>
*/
inline RollbackConfiguration& AddRollbackTriggers(RollbackTrigger&& value) { m_rollbackTriggersHasBeenSet = true; m_rollbackTriggers.push_back(std::move(value)); return *this; }
private:
int m_monitoringTimeInMinutes;
bool m_monitoringTimeInMinutesHasBeenSet;
Aws::Vector<RollbackTrigger> m_rollbackTriggers;
bool m_rollbackTriggersHasBeenSet;
};
} // namespace Model
} // namespace ServerlessApplicationRepository
} // namespace Aws

View File

@@ -0,0 +1,199 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/serverlessrepo/ServerlessApplicationRepository_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 ServerlessApplicationRepository
{
namespace Model
{
/**
* <p>This property corresponds to the <i>AWS CloudFormation <a
* href="https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/RollbackTrigger">RollbackTrigger</a>
* </i> Data Type.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/RollbackTrigger">AWS
* API Reference</a></p>
*/
class AWS_SERVERLESSAPPLICATIONREPOSITORY_API RollbackTrigger
{
public:
RollbackTrigger();
RollbackTrigger(Aws::Utils::Json::JsonView jsonValue);
RollbackTrigger& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>This property corresponds to the content of the same name for the <i>AWS
* CloudFormation <a
* href="https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/RollbackTrigger">RollbackTrigger</a>
* </i> Data Type.</p>
*/
inline const Aws::String& GetArn() const{ return m_arn; }
/**
* <p>This property corresponds to the content of the same name for the <i>AWS
* CloudFormation <a
* href="https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/RollbackTrigger">RollbackTrigger</a>
* </i> Data Type.</p>
*/
inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
/**
* <p>This property corresponds to the content of the same name for the <i>AWS
* CloudFormation <a
* href="https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/RollbackTrigger">RollbackTrigger</a>
* </i> Data Type.</p>
*/
inline void SetArn(const Aws::String& value) { m_arnHasBeenSet = true; m_arn = value; }
/**
* <p>This property corresponds to the content of the same name for the <i>AWS
* CloudFormation <a
* href="https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/RollbackTrigger">RollbackTrigger</a>
* </i> Data Type.</p>
*/
inline void SetArn(Aws::String&& value) { m_arnHasBeenSet = true; m_arn = std::move(value); }
/**
* <p>This property corresponds to the content of the same name for the <i>AWS
* CloudFormation <a
* href="https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/RollbackTrigger">RollbackTrigger</a>
* </i> Data Type.</p>
*/
inline void SetArn(const char* value) { m_arnHasBeenSet = true; m_arn.assign(value); }
/**
* <p>This property corresponds to the content of the same name for the <i>AWS
* CloudFormation <a
* href="https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/RollbackTrigger">RollbackTrigger</a>
* </i> Data Type.</p>
*/
inline RollbackTrigger& WithArn(const Aws::String& value) { SetArn(value); return *this;}
/**
* <p>This property corresponds to the content of the same name for the <i>AWS
* CloudFormation <a
* href="https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/RollbackTrigger">RollbackTrigger</a>
* </i> Data Type.</p>
*/
inline RollbackTrigger& WithArn(Aws::String&& value) { SetArn(std::move(value)); return *this;}
/**
* <p>This property corresponds to the content of the same name for the <i>AWS
* CloudFormation <a
* href="https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/RollbackTrigger">RollbackTrigger</a>
* </i> Data Type.</p>
*/
inline RollbackTrigger& WithArn(const char* value) { SetArn(value); return *this;}
/**
* <p>This property corresponds to the content of the same name for the <i>AWS
* CloudFormation <a
* href="https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/RollbackTrigger">RollbackTrigger</a>
* </i> Data Type.</p>
*/
inline const Aws::String& GetType() const{ return m_type; }
/**
* <p>This property corresponds to the content of the same name for the <i>AWS
* CloudFormation <a
* href="https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/RollbackTrigger">RollbackTrigger</a>
* </i> Data Type.</p>
*/
inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
/**
* <p>This property corresponds to the content of the same name for the <i>AWS
* CloudFormation <a
* href="https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/RollbackTrigger">RollbackTrigger</a>
* </i> Data Type.</p>
*/
inline void SetType(const Aws::String& value) { m_typeHasBeenSet = true; m_type = value; }
/**
* <p>This property corresponds to the content of the same name for the <i>AWS
* CloudFormation <a
* href="https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/RollbackTrigger">RollbackTrigger</a>
* </i> Data Type.</p>
*/
inline void SetType(Aws::String&& value) { m_typeHasBeenSet = true; m_type = std::move(value); }
/**
* <p>This property corresponds to the content of the same name for the <i>AWS
* CloudFormation <a
* href="https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/RollbackTrigger">RollbackTrigger</a>
* </i> Data Type.</p>
*/
inline void SetType(const char* value) { m_typeHasBeenSet = true; m_type.assign(value); }
/**
* <p>This property corresponds to the content of the same name for the <i>AWS
* CloudFormation <a
* href="https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/RollbackTrigger">RollbackTrigger</a>
* </i> Data Type.</p>
*/
inline RollbackTrigger& WithType(const Aws::String& value) { SetType(value); return *this;}
/**
* <p>This property corresponds to the content of the same name for the <i>AWS
* CloudFormation <a
* href="https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/RollbackTrigger">RollbackTrigger</a>
* </i> Data Type.</p>
*/
inline RollbackTrigger& WithType(Aws::String&& value) { SetType(std::move(value)); return *this;}
/**
* <p>This property corresponds to the content of the same name for the <i>AWS
* CloudFormation <a
* href="https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/RollbackTrigger">RollbackTrigger</a>
* </i> Data Type.</p>
*/
inline RollbackTrigger& WithType(const char* value) { SetType(value); return *this;}
private:
Aws::String m_arn;
bool m_arnHasBeenSet;
Aws::String m_type;
bool m_typeHasBeenSet;
};
} // namespace Model
} // namespace ServerlessApplicationRepository
} // 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/serverlessrepo/ServerlessApplicationRepository_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
namespace Aws
{
namespace ServerlessApplicationRepository
{
namespace Model
{
enum class Status
{
NOT_SET,
PREPARING,
ACTIVE,
EXPIRED
};
namespace StatusMapper
{
AWS_SERVERLESSAPPLICATIONREPOSITORY_API Status GetStatusForName(const Aws::String& name);
AWS_SERVERLESSAPPLICATIONREPOSITORY_API Aws::String GetNameForStatus(Status value);
} // namespace StatusMapper
} // namespace Model
} // namespace ServerlessApplicationRepository
} // namespace Aws

View File

@@ -0,0 +1,215 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/serverlessrepo/ServerlessApplicationRepository_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 ServerlessApplicationRepository
{
namespace Model
{
/**
* <p>This property corresponds to the <i>AWS CloudFormation <a
* href="https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/Tag">Tag</a>
* </i> Data Type.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/Tag">AWS
* API Reference</a></p>
*/
class AWS_SERVERLESSAPPLICATIONREPOSITORY_API Tag
{
public:
Tag();
Tag(Aws::Utils::Json::JsonView jsonValue);
Tag& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>This property corresponds to the content of the same name for the <i>AWS
* CloudFormation <a
* href="https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/Tag">Tag</a>
* </i> Data Type.</p>
*/
inline const Aws::String& GetKey() const{ return m_key; }
/**
* <p>This property corresponds to the content of the same name for the <i>AWS
* CloudFormation <a
* href="https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/Tag">Tag</a>
* </i> Data Type.</p>
*/
inline bool KeyHasBeenSet() const { return m_keyHasBeenSet; }
/**
* <p>This property corresponds to the content of the same name for the <i>AWS
* CloudFormation <a
* href="https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/Tag">Tag</a>
* </i> Data Type.</p>
*/
inline void SetKey(const Aws::String& value) { m_keyHasBeenSet = true; m_key = value; }
/**
* <p>This property corresponds to the content of the same name for the <i>AWS
* CloudFormation <a
* href="https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/Tag">Tag</a>
* </i> Data Type.</p>
*/
inline void SetKey(Aws::String&& value) { m_keyHasBeenSet = true; m_key = std::move(value); }
/**
* <p>This property corresponds to the content of the same name for the <i>AWS
* CloudFormation <a
* href="https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/Tag">Tag</a>
* </i> Data Type.</p>
*/
inline void SetKey(const char* value) { m_keyHasBeenSet = true; m_key.assign(value); }
/**
* <p>This property corresponds to the content of the same name for the <i>AWS
* CloudFormation <a
* href="https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/Tag">Tag</a>
* </i> Data Type.</p>
*/
inline Tag& WithKey(const Aws::String& value) { SetKey(value); return *this;}
/**
* <p>This property corresponds to the content of the same name for the <i>AWS
* CloudFormation <a
* href="https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/Tag">Tag</a>
* </i> Data Type.</p>
*/
inline Tag& WithKey(Aws::String&& value) { SetKey(std::move(value)); return *this;}
/**
* <p>This property corresponds to the content of the same name for the <i>AWS
* CloudFormation <a
* href="https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/Tag">Tag</a>
* </i> Data Type.</p>
*/
inline Tag& WithKey(const char* value) { SetKey(value); return *this;}
/**
* <p>This property corresponds to the content of the same name for the <i>AWS
* CloudFormation <a
* href="https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/Tag">
* Tag</a>
</i>
Data Type.</p>
*/
inline const Aws::String& GetValue() const{ return m_value; }
/**
* <p>This property corresponds to the content of the same name for the <i>AWS
* CloudFormation <a
* href="https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/Tag">
* Tag</a>
</i>
Data Type.</p>
*/
inline bool ValueHasBeenSet() const { return m_valueHasBeenSet; }
/**
* <p>This property corresponds to the content of the same name for the <i>AWS
* CloudFormation <a
* href="https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/Tag">
* Tag</a>
</i>
Data Type.</p>
*/
inline void SetValue(const Aws::String& value) { m_valueHasBeenSet = true; m_value = value; }
/**
* <p>This property corresponds to the content of the same name for the <i>AWS
* CloudFormation <a
* href="https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/Tag">
* Tag</a>
</i>
Data Type.</p>
*/
inline void SetValue(Aws::String&& value) { m_valueHasBeenSet = true; m_value = std::move(value); }
/**
* <p>This property corresponds to the content of the same name for the <i>AWS
* CloudFormation <a
* href="https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/Tag">
* Tag</a>
</i>
Data Type.</p>
*/
inline void SetValue(const char* value) { m_valueHasBeenSet = true; m_value.assign(value); }
/**
* <p>This property corresponds to the content of the same name for the <i>AWS
* CloudFormation <a
* href="https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/Tag">
* Tag</a>
</i>
Data Type.</p>
*/
inline Tag& WithValue(const Aws::String& value) { SetValue(value); return *this;}
/**
* <p>This property corresponds to the content of the same name for the <i>AWS
* CloudFormation <a
* href="https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/Tag">
* Tag</a>
</i>
Data Type.</p>
*/
inline Tag& WithValue(Aws::String&& value) { SetValue(std::move(value)); return *this;}
/**
* <p>This property corresponds to the content of the same name for the <i>AWS
* CloudFormation <a
* href="https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/Tag">
* Tag</a>
</i>
Data Type.</p>
*/
inline Tag& WithValue(const char* value) { SetValue(value); return *this;}
private:
Aws::String m_key;
bool m_keyHasBeenSet;
Aws::String m_value;
bool m_valueHasBeenSet;
};
} // namespace Model
} // namespace ServerlessApplicationRepository
} // 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/serverlessrepo/ServerlessApplicationRepository_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 ServerlessApplicationRepository
{
namespace Model
{
/**
* <p>The client is sending more than the allowed number of requests per unit of
* time.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/TooManyRequestsException">AWS
* API Reference</a></p>
*/
class AWS_SERVERLESSAPPLICATIONREPOSITORY_API TooManyRequestsException
{
public:
TooManyRequestsException();
TooManyRequestsException(Aws::Utils::Json::JsonView jsonValue);
TooManyRequestsException& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>429</p>
*/
inline const Aws::String& GetErrorCode() const{ return m_errorCode; }
/**
* <p>429</p>
*/
inline bool ErrorCodeHasBeenSet() const { return m_errorCodeHasBeenSet; }
/**
* <p>429</p>
*/
inline void SetErrorCode(const Aws::String& value) { m_errorCodeHasBeenSet = true; m_errorCode = value; }
/**
* <p>429</p>
*/
inline void SetErrorCode(Aws::String&& value) { m_errorCodeHasBeenSet = true; m_errorCode = std::move(value); }
/**
* <p>429</p>
*/
inline void SetErrorCode(const char* value) { m_errorCodeHasBeenSet = true; m_errorCode.assign(value); }
/**
* <p>429</p>
*/
inline TooManyRequestsException& WithErrorCode(const Aws::String& value) { SetErrorCode(value); return *this;}
/**
* <p>429</p>
*/
inline TooManyRequestsException& WithErrorCode(Aws::String&& value) { SetErrorCode(std::move(value)); return *this;}
/**
* <p>429</p>
*/
inline TooManyRequestsException& WithErrorCode(const char* value) { SetErrorCode(value); return *this;}
/**
* <p>The client is sending more than the allowed number of requests per unit of
* time.</p>
*/
inline const Aws::String& GetMessage() const{ return m_message; }
/**
* <p>The client is sending more than the allowed number of requests per unit of
* time.</p>
*/
inline bool MessageHasBeenSet() const { return m_messageHasBeenSet; }
/**
* <p>The client is sending more than the allowed number of requests per unit of
* time.</p>
*/
inline void SetMessage(const Aws::String& value) { m_messageHasBeenSet = true; m_message = value; }
/**
* <p>The client is sending more than the allowed number of requests per unit of
* time.</p>
*/
inline void SetMessage(Aws::String&& value) { m_messageHasBeenSet = true; m_message = std::move(value); }
/**
* <p>The client is sending more than the allowed number of requests per unit of
* time.</p>
*/
inline void SetMessage(const char* value) { m_messageHasBeenSet = true; m_message.assign(value); }
/**
* <p>The client is sending more than the allowed number of requests per unit of
* time.</p>
*/
inline TooManyRequestsException& WithMessage(const Aws::String& value) { SetMessage(value); return *this;}
/**
* <p>The client is sending more than the allowed number of requests per unit of
* time.</p>
*/
inline TooManyRequestsException& WithMessage(Aws::String&& value) { SetMessage(std::move(value)); return *this;}
/**
* <p>The client is sending more than the allowed number of requests per unit of
* time.</p>
*/
inline TooManyRequestsException& WithMessage(const char* value) { SetMessage(value); return *this;}
private:
Aws::String m_errorCode;
bool m_errorCodeHasBeenSet;
Aws::String m_message;
bool m_messageHasBeenSet;
};
} // namespace Model
} // namespace ServerlessApplicationRepository
} // namespace Aws

View File

@@ -0,0 +1,127 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/serverlessrepo/ServerlessApplicationRepository_EXPORTS.h>
#include <aws/serverlessrepo/ServerlessApplicationRepositoryRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace ServerlessApplicationRepository
{
namespace Model
{
/**
*/
class AWS_SERVERLESSAPPLICATIONREPOSITORY_API UnshareApplicationRequest : public ServerlessApplicationRepositoryRequest
{
public:
UnshareApplicationRequest();
// 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 "UnshareApplication"; }
Aws::String SerializePayload() const override;
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline const Aws::String& GetApplicationId() const{ return m_applicationId; }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline bool ApplicationIdHasBeenSet() const { return m_applicationIdHasBeenSet; }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline void SetApplicationId(const Aws::String& value) { m_applicationIdHasBeenSet = true; m_applicationId = value; }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline void SetApplicationId(Aws::String&& value) { m_applicationIdHasBeenSet = true; m_applicationId = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline void SetApplicationId(const char* value) { m_applicationIdHasBeenSet = true; m_applicationId.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline UnshareApplicationRequest& WithApplicationId(const Aws::String& value) { SetApplicationId(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline UnshareApplicationRequest& WithApplicationId(Aws::String&& value) { SetApplicationId(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline UnshareApplicationRequest& WithApplicationId(const char* value) { SetApplicationId(value); return *this;}
/**
* <p>The AWS Organization ID to unshare the application from.</p>
*/
inline const Aws::String& GetOrganizationId() const{ return m_organizationId; }
/**
* <p>The AWS Organization ID to unshare the application from.</p>
*/
inline bool OrganizationIdHasBeenSet() const { return m_organizationIdHasBeenSet; }
/**
* <p>The AWS Organization ID to unshare the application from.</p>
*/
inline void SetOrganizationId(const Aws::String& value) { m_organizationIdHasBeenSet = true; m_organizationId = value; }
/**
* <p>The AWS Organization ID to unshare the application from.</p>
*/
inline void SetOrganizationId(Aws::String&& value) { m_organizationIdHasBeenSet = true; m_organizationId = std::move(value); }
/**
* <p>The AWS Organization ID to unshare the application from.</p>
*/
inline void SetOrganizationId(const char* value) { m_organizationIdHasBeenSet = true; m_organizationId.assign(value); }
/**
* <p>The AWS Organization ID to unshare the application from.</p>
*/
inline UnshareApplicationRequest& WithOrganizationId(const Aws::String& value) { SetOrganizationId(value); return *this;}
/**
* <p>The AWS Organization ID to unshare the application from.</p>
*/
inline UnshareApplicationRequest& WithOrganizationId(Aws::String&& value) { SetOrganizationId(std::move(value)); return *this;}
/**
* <p>The AWS Organization ID to unshare the application from.</p>
*/
inline UnshareApplicationRequest& WithOrganizationId(const char* value) { SetOrganizationId(value); return *this;}
private:
Aws::String m_applicationId;
bool m_applicationIdHasBeenSet;
Aws::String m_organizationId;
bool m_organizationIdHasBeenSet;
};
} // namespace Model
} // namespace ServerlessApplicationRepository
} // namespace Aws

View File

@@ -0,0 +1,411 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/serverlessrepo/ServerlessApplicationRepository_EXPORTS.h>
#include <aws/serverlessrepo/ServerlessApplicationRepositoryRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <utility>
namespace Aws
{
namespace ServerlessApplicationRepository
{
namespace Model
{
/**
*/
class AWS_SERVERLESSAPPLICATIONREPOSITORY_API UpdateApplicationRequest : public ServerlessApplicationRepositoryRequest
{
public:
UpdateApplicationRequest();
// 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 "UpdateApplication"; }
Aws::String SerializePayload() const override;
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline const Aws::String& GetApplicationId() const{ return m_applicationId; }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline bool ApplicationIdHasBeenSet() const { return m_applicationIdHasBeenSet; }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline void SetApplicationId(const Aws::String& value) { m_applicationIdHasBeenSet = true; m_applicationId = value; }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline void SetApplicationId(Aws::String&& value) { m_applicationIdHasBeenSet = true; m_applicationId = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline void SetApplicationId(const char* value) { m_applicationIdHasBeenSet = true; m_applicationId.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline UpdateApplicationRequest& WithApplicationId(const Aws::String& value) { SetApplicationId(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline UpdateApplicationRequest& WithApplicationId(Aws::String&& value) { SetApplicationId(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the application.</p>
*/
inline UpdateApplicationRequest& WithApplicationId(const char* value) { SetApplicationId(value); return *this;}
/**
* <p>The name of the author publishing the app.</p><p>Minimum length=1. Maximum
* length=127.</p><p>Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";</p>
*/
inline const Aws::String& GetAuthor() const{ return m_author; }
/**
* <p>The name of the author publishing the app.</p><p>Minimum length=1. Maximum
* length=127.</p><p>Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";</p>
*/
inline bool AuthorHasBeenSet() const { return m_authorHasBeenSet; }
/**
* <p>The name of the author publishing the app.</p><p>Minimum length=1. Maximum
* length=127.</p><p>Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";</p>
*/
inline void SetAuthor(const Aws::String& value) { m_authorHasBeenSet = true; m_author = value; }
/**
* <p>The name of the author publishing the app.</p><p>Minimum length=1. Maximum
* length=127.</p><p>Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";</p>
*/
inline void SetAuthor(Aws::String&& value) { m_authorHasBeenSet = true; m_author = std::move(value); }
/**
* <p>The name of the author publishing the app.</p><p>Minimum length=1. Maximum
* length=127.</p><p>Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";</p>
*/
inline void SetAuthor(const char* value) { m_authorHasBeenSet = true; m_author.assign(value); }
/**
* <p>The name of the author publishing the app.</p><p>Minimum length=1. Maximum
* length=127.</p><p>Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";</p>
*/
inline UpdateApplicationRequest& WithAuthor(const Aws::String& value) { SetAuthor(value); return *this;}
/**
* <p>The name of the author publishing the app.</p><p>Minimum length=1. Maximum
* length=127.</p><p>Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";</p>
*/
inline UpdateApplicationRequest& WithAuthor(Aws::String&& value) { SetAuthor(std::move(value)); return *this;}
/**
* <p>The name of the author publishing the app.</p><p>Minimum length=1. Maximum
* length=127.</p><p>Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";</p>
*/
inline UpdateApplicationRequest& WithAuthor(const char* value) { SetAuthor(value); return *this;}
/**
* <p>The description of the application.</p><p>Minimum length=1. Maximum
* length=256</p>
*/
inline const Aws::String& GetDescription() const{ return m_description; }
/**
* <p>The description of the application.</p><p>Minimum length=1. Maximum
* length=256</p>
*/
inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
/**
* <p>The description of the application.</p><p>Minimum length=1. Maximum
* length=256</p>
*/
inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; }
/**
* <p>The description of the application.</p><p>Minimum length=1. Maximum
* length=256</p>
*/
inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); }
/**
* <p>The description of the application.</p><p>Minimum length=1. Maximum
* length=256</p>
*/
inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); }
/**
* <p>The description of the application.</p><p>Minimum length=1. Maximum
* length=256</p>
*/
inline UpdateApplicationRequest& WithDescription(const Aws::String& value) { SetDescription(value); return *this;}
/**
* <p>The description of the application.</p><p>Minimum length=1. Maximum
* length=256</p>
*/
inline UpdateApplicationRequest& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;}
/**
* <p>The description of the application.</p><p>Minimum length=1. Maximum
* length=256</p>
*/
inline UpdateApplicationRequest& WithDescription(const char* value) { SetDescription(value); return *this;}
/**
* <p>A URL with more information about the application, for example the location
* of your GitHub repository for the application.</p>
*/
inline const Aws::String& GetHomePageUrl() const{ return m_homePageUrl; }
/**
* <p>A URL with more information about the application, for example the location
* of your GitHub repository for the application.</p>
*/
inline bool HomePageUrlHasBeenSet() const { return m_homePageUrlHasBeenSet; }
/**
* <p>A URL with more information about the application, for example the location
* of your GitHub repository for the application.</p>
*/
inline void SetHomePageUrl(const Aws::String& value) { m_homePageUrlHasBeenSet = true; m_homePageUrl = value; }
/**
* <p>A URL with more information about the application, for example the location
* of your GitHub repository for the application.</p>
*/
inline void SetHomePageUrl(Aws::String&& value) { m_homePageUrlHasBeenSet = true; m_homePageUrl = std::move(value); }
/**
* <p>A URL with more information about the application, for example the location
* of your GitHub repository for the application.</p>
*/
inline void SetHomePageUrl(const char* value) { m_homePageUrlHasBeenSet = true; m_homePageUrl.assign(value); }
/**
* <p>A URL with more information about the application, for example the location
* of your GitHub repository for the application.</p>
*/
inline UpdateApplicationRequest& WithHomePageUrl(const Aws::String& value) { SetHomePageUrl(value); return *this;}
/**
* <p>A URL with more information about the application, for example the location
* of your GitHub repository for the application.</p>
*/
inline UpdateApplicationRequest& WithHomePageUrl(Aws::String&& value) { SetHomePageUrl(std::move(value)); return *this;}
/**
* <p>A URL with more information about the application, for example the location
* of your GitHub repository for the application.</p>
*/
inline UpdateApplicationRequest& WithHomePageUrl(const char* value) { SetHomePageUrl(value); return *this;}
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline const Aws::Vector<Aws::String>& GetLabels() const{ return m_labels; }
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline bool LabelsHasBeenSet() const { return m_labelsHasBeenSet; }
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline void SetLabels(const Aws::Vector<Aws::String>& value) { m_labelsHasBeenSet = true; m_labels = value; }
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline void SetLabels(Aws::Vector<Aws::String>&& value) { m_labelsHasBeenSet = true; m_labels = std::move(value); }
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline UpdateApplicationRequest& WithLabels(const Aws::Vector<Aws::String>& value) { SetLabels(value); return *this;}
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline UpdateApplicationRequest& WithLabels(Aws::Vector<Aws::String>&& value) { SetLabels(std::move(value)); return *this;}
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline UpdateApplicationRequest& AddLabels(const Aws::String& value) { m_labelsHasBeenSet = true; m_labels.push_back(value); return *this; }
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline UpdateApplicationRequest& AddLabels(Aws::String&& value) { m_labelsHasBeenSet = true; m_labels.push_back(std::move(value)); return *this; }
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline UpdateApplicationRequest& AddLabels(const char* value) { m_labelsHasBeenSet = true; m_labels.push_back(value); return *this; }
/**
* <p>A text readme file in Markdown language that contains a more detailed
* description of the application and how it works.</p><p>Maximum size 5 MB</p>
*/
inline const Aws::String& GetReadmeBody() const{ return m_readmeBody; }
/**
* <p>A text readme file in Markdown language that contains a more detailed
* description of the application and how it works.</p><p>Maximum size 5 MB</p>
*/
inline bool ReadmeBodyHasBeenSet() const { return m_readmeBodyHasBeenSet; }
/**
* <p>A text readme file in Markdown language that contains a more detailed
* description of the application and how it works.</p><p>Maximum size 5 MB</p>
*/
inline void SetReadmeBody(const Aws::String& value) { m_readmeBodyHasBeenSet = true; m_readmeBody = value; }
/**
* <p>A text readme file in Markdown language that contains a more detailed
* description of the application and how it works.</p><p>Maximum size 5 MB</p>
*/
inline void SetReadmeBody(Aws::String&& value) { m_readmeBodyHasBeenSet = true; m_readmeBody = std::move(value); }
/**
* <p>A text readme file in Markdown language that contains a more detailed
* description of the application and how it works.</p><p>Maximum size 5 MB</p>
*/
inline void SetReadmeBody(const char* value) { m_readmeBodyHasBeenSet = true; m_readmeBody.assign(value); }
/**
* <p>A text readme file in Markdown language that contains a more detailed
* description of the application and how it works.</p><p>Maximum size 5 MB</p>
*/
inline UpdateApplicationRequest& WithReadmeBody(const Aws::String& value) { SetReadmeBody(value); return *this;}
/**
* <p>A text readme file in Markdown language that contains a more detailed
* description of the application and how it works.</p><p>Maximum size 5 MB</p>
*/
inline UpdateApplicationRequest& WithReadmeBody(Aws::String&& value) { SetReadmeBody(std::move(value)); return *this;}
/**
* <p>A text readme file in Markdown language that contains a more detailed
* description of the application and how it works.</p><p>Maximum size 5 MB</p>
*/
inline UpdateApplicationRequest& WithReadmeBody(const char* value) { SetReadmeBody(value); return *this;}
/**
* <p>A link to the readme file in Markdown language that contains a more detailed
* description of the application and how it works.</p><p>Maximum size 5 MB</p>
*/
inline const Aws::String& GetReadmeUrl() const{ return m_readmeUrl; }
/**
* <p>A link to the readme file in Markdown language that contains a more detailed
* description of the application and how it works.</p><p>Maximum size 5 MB</p>
*/
inline bool ReadmeUrlHasBeenSet() const { return m_readmeUrlHasBeenSet; }
/**
* <p>A link to the readme file in Markdown language that contains a more detailed
* description of the application and how it works.</p><p>Maximum size 5 MB</p>
*/
inline void SetReadmeUrl(const Aws::String& value) { m_readmeUrlHasBeenSet = true; m_readmeUrl = value; }
/**
* <p>A link to the readme file in Markdown language that contains a more detailed
* description of the application and how it works.</p><p>Maximum size 5 MB</p>
*/
inline void SetReadmeUrl(Aws::String&& value) { m_readmeUrlHasBeenSet = true; m_readmeUrl = std::move(value); }
/**
* <p>A link to the readme file in Markdown language that contains a more detailed
* description of the application and how it works.</p><p>Maximum size 5 MB</p>
*/
inline void SetReadmeUrl(const char* value) { m_readmeUrlHasBeenSet = true; m_readmeUrl.assign(value); }
/**
* <p>A link to the readme file in Markdown language that contains a more detailed
* description of the application and how it works.</p><p>Maximum size 5 MB</p>
*/
inline UpdateApplicationRequest& WithReadmeUrl(const Aws::String& value) { SetReadmeUrl(value); return *this;}
/**
* <p>A link to the readme file in Markdown language that contains a more detailed
* description of the application and how it works.</p><p>Maximum size 5 MB</p>
*/
inline UpdateApplicationRequest& WithReadmeUrl(Aws::String&& value) { SetReadmeUrl(std::move(value)); return *this;}
/**
* <p>A link to the readme file in Markdown language that contains a more detailed
* description of the application and how it works.</p><p>Maximum size 5 MB</p>
*/
inline UpdateApplicationRequest& WithReadmeUrl(const char* value) { SetReadmeUrl(value); return *this;}
private:
Aws::String m_applicationId;
bool m_applicationIdHasBeenSet;
Aws::String m_author;
bool m_authorHasBeenSet;
Aws::String m_description;
bool m_descriptionHasBeenSet;
Aws::String m_homePageUrl;
bool m_homePageUrlHasBeenSet;
Aws::Vector<Aws::String> m_labels;
bool m_labelsHasBeenSet;
Aws::String m_readmeBody;
bool m_readmeBodyHasBeenSet;
Aws::String m_readmeUrl;
bool m_readmeUrlHasBeenSet;
};
} // namespace Model
} // namespace ServerlessApplicationRepository
} // namespace Aws

View File

@@ -0,0 +1,584 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/serverlessrepo/ServerlessApplicationRepository_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/serverlessrepo/model/Version.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace ServerlessApplicationRepository
{
namespace Model
{
class AWS_SERVERLESSAPPLICATIONREPOSITORY_API UpdateApplicationResult
{
public:
UpdateApplicationResult();
UpdateApplicationResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
UpdateApplicationResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline const Aws::String& GetApplicationId() const{ return m_applicationId; }
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline void SetApplicationId(const Aws::String& value) { m_applicationId = value; }
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline void SetApplicationId(Aws::String&& value) { m_applicationId = std::move(value); }
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline void SetApplicationId(const char* value) { m_applicationId.assign(value); }
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline UpdateApplicationResult& WithApplicationId(const Aws::String& value) { SetApplicationId(value); return *this;}
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline UpdateApplicationResult& WithApplicationId(Aws::String&& value) { SetApplicationId(std::move(value)); return *this;}
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline UpdateApplicationResult& WithApplicationId(const char* value) { SetApplicationId(value); return *this;}
/**
* <p>The name of the author publishing the app.</p><p>Minimum length=1. Maximum
* length=127.</p><p>Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";</p>
*/
inline const Aws::String& GetAuthor() const{ return m_author; }
/**
* <p>The name of the author publishing the app.</p><p>Minimum length=1. Maximum
* length=127.</p><p>Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";</p>
*/
inline void SetAuthor(const Aws::String& value) { m_author = value; }
/**
* <p>The name of the author publishing the app.</p><p>Minimum length=1. Maximum
* length=127.</p><p>Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";</p>
*/
inline void SetAuthor(Aws::String&& value) { m_author = std::move(value); }
/**
* <p>The name of the author publishing the app.</p><p>Minimum length=1. Maximum
* length=127.</p><p>Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";</p>
*/
inline void SetAuthor(const char* value) { m_author.assign(value); }
/**
* <p>The name of the author publishing the app.</p><p>Minimum length=1. Maximum
* length=127.</p><p>Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";</p>
*/
inline UpdateApplicationResult& WithAuthor(const Aws::String& value) { SetAuthor(value); return *this;}
/**
* <p>The name of the author publishing the app.</p><p>Minimum length=1. Maximum
* length=127.</p><p>Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";</p>
*/
inline UpdateApplicationResult& WithAuthor(Aws::String&& value) { SetAuthor(std::move(value)); return *this;}
/**
* <p>The name of the author publishing the app.</p><p>Minimum length=1. Maximum
* length=127.</p><p>Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";</p>
*/
inline UpdateApplicationResult& WithAuthor(const char* value) { SetAuthor(value); return *this;}
/**
* <p>The date and time this resource was created.</p>
*/
inline const Aws::String& GetCreationTime() const{ return m_creationTime; }
/**
* <p>The date and time this resource was created.</p>
*/
inline void SetCreationTime(const Aws::String& value) { m_creationTime = value; }
/**
* <p>The date and time this resource was created.</p>
*/
inline void SetCreationTime(Aws::String&& value) { m_creationTime = std::move(value); }
/**
* <p>The date and time this resource was created.</p>
*/
inline void SetCreationTime(const char* value) { m_creationTime.assign(value); }
/**
* <p>The date and time this resource was created.</p>
*/
inline UpdateApplicationResult& WithCreationTime(const Aws::String& value) { SetCreationTime(value); return *this;}
/**
* <p>The date and time this resource was created.</p>
*/
inline UpdateApplicationResult& WithCreationTime(Aws::String&& value) { SetCreationTime(std::move(value)); return *this;}
/**
* <p>The date and time this resource was created.</p>
*/
inline UpdateApplicationResult& WithCreationTime(const char* value) { SetCreationTime(value); return *this;}
/**
* <p>The description of the application.</p><p>Minimum length=1. Maximum
* length=256</p>
*/
inline const Aws::String& GetDescription() const{ return m_description; }
/**
* <p>The description of the application.</p><p>Minimum length=1. Maximum
* length=256</p>
*/
inline void SetDescription(const Aws::String& value) { m_description = value; }
/**
* <p>The description of the application.</p><p>Minimum length=1. Maximum
* length=256</p>
*/
inline void SetDescription(Aws::String&& value) { m_description = std::move(value); }
/**
* <p>The description of the application.</p><p>Minimum length=1. Maximum
* length=256</p>
*/
inline void SetDescription(const char* value) { m_description.assign(value); }
/**
* <p>The description of the application.</p><p>Minimum length=1. Maximum
* length=256</p>
*/
inline UpdateApplicationResult& WithDescription(const Aws::String& value) { SetDescription(value); return *this;}
/**
* <p>The description of the application.</p><p>Minimum length=1. Maximum
* length=256</p>
*/
inline UpdateApplicationResult& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;}
/**
* <p>The description of the application.</p><p>Minimum length=1. Maximum
* length=256</p>
*/
inline UpdateApplicationResult& WithDescription(const char* value) { SetDescription(value); return *this;}
/**
* <p>A URL with more information about the application, for example the location
* of your GitHub repository for the application.</p>
*/
inline const Aws::String& GetHomePageUrl() const{ return m_homePageUrl; }
/**
* <p>A URL with more information about the application, for example the location
* of your GitHub repository for the application.</p>
*/
inline void SetHomePageUrl(const Aws::String& value) { m_homePageUrl = value; }
/**
* <p>A URL with more information about the application, for example the location
* of your GitHub repository for the application.</p>
*/
inline void SetHomePageUrl(Aws::String&& value) { m_homePageUrl = std::move(value); }
/**
* <p>A URL with more information about the application, for example the location
* of your GitHub repository for the application.</p>
*/
inline void SetHomePageUrl(const char* value) { m_homePageUrl.assign(value); }
/**
* <p>A URL with more information about the application, for example the location
* of your GitHub repository for the application.</p>
*/
inline UpdateApplicationResult& WithHomePageUrl(const Aws::String& value) { SetHomePageUrl(value); return *this;}
/**
* <p>A URL with more information about the application, for example the location
* of your GitHub repository for the application.</p>
*/
inline UpdateApplicationResult& WithHomePageUrl(Aws::String&& value) { SetHomePageUrl(std::move(value)); return *this;}
/**
* <p>A URL with more information about the application, for example the location
* of your GitHub repository for the application.</p>
*/
inline UpdateApplicationResult& WithHomePageUrl(const char* value) { SetHomePageUrl(value); return *this;}
/**
* <p>Whether the author of this application has been verified. This means means
* that AWS has made a good faith review, as a reasonable and prudent service
* provider, of the information provided by the requester and has confirmed that
* the requester's identity is as claimed.</p>
*/
inline bool GetIsVerifiedAuthor() const{ return m_isVerifiedAuthor; }
/**
* <p>Whether the author of this application has been verified. This means means
* that AWS has made a good faith review, as a reasonable and prudent service
* provider, of the information provided by the requester and has confirmed that
* the requester's identity is as claimed.</p>
*/
inline void SetIsVerifiedAuthor(bool value) { m_isVerifiedAuthor = value; }
/**
* <p>Whether the author of this application has been verified. This means means
* that AWS has made a good faith review, as a reasonable and prudent service
* provider, of the information provided by the requester and has confirmed that
* the requester's identity is as claimed.</p>
*/
inline UpdateApplicationResult& WithIsVerifiedAuthor(bool value) { SetIsVerifiedAuthor(value); return *this;}
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline const Aws::Vector<Aws::String>& GetLabels() const{ return m_labels; }
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline void SetLabels(const Aws::Vector<Aws::String>& value) { m_labels = value; }
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline void SetLabels(Aws::Vector<Aws::String>&& value) { m_labels = std::move(value); }
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline UpdateApplicationResult& WithLabels(const Aws::Vector<Aws::String>& value) { SetLabels(value); return *this;}
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline UpdateApplicationResult& WithLabels(Aws::Vector<Aws::String>&& value) { SetLabels(std::move(value)); return *this;}
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline UpdateApplicationResult& AddLabels(const Aws::String& value) { m_labels.push_back(value); return *this; }
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline UpdateApplicationResult& AddLabels(Aws::String&& value) { m_labels.push_back(std::move(value)); return *this; }
/**
* <p>Labels to improve discovery of apps in search results.</p><p>Minimum
* length=1. Maximum length=127. Maximum number of labels: 10</p><p>Pattern:
* "^[a-zA-Z0-9+\\-_:\\/@]+$";</p>
*/
inline UpdateApplicationResult& AddLabels(const char* value) { m_labels.push_back(value); return *this; }
/**
* <p>A link to a license file of the app that matches the spdxLicenseID value of
* your application.</p><p>Maximum size 5 MB</p>
*/
inline const Aws::String& GetLicenseUrl() const{ return m_licenseUrl; }
/**
* <p>A link to a license file of the app that matches the spdxLicenseID value of
* your application.</p><p>Maximum size 5 MB</p>
*/
inline void SetLicenseUrl(const Aws::String& value) { m_licenseUrl = value; }
/**
* <p>A link to a license file of the app that matches the spdxLicenseID value of
* your application.</p><p>Maximum size 5 MB</p>
*/
inline void SetLicenseUrl(Aws::String&& value) { m_licenseUrl = std::move(value); }
/**
* <p>A link to a license file of the app that matches the spdxLicenseID value of
* your application.</p><p>Maximum size 5 MB</p>
*/
inline void SetLicenseUrl(const char* value) { m_licenseUrl.assign(value); }
/**
* <p>A link to a license file of the app that matches the spdxLicenseID value of
* your application.</p><p>Maximum size 5 MB</p>
*/
inline UpdateApplicationResult& WithLicenseUrl(const Aws::String& value) { SetLicenseUrl(value); return *this;}
/**
* <p>A link to a license file of the app that matches the spdxLicenseID value of
* your application.</p><p>Maximum size 5 MB</p>
*/
inline UpdateApplicationResult& WithLicenseUrl(Aws::String&& value) { SetLicenseUrl(std::move(value)); return *this;}
/**
* <p>A link to a license file of the app that matches the spdxLicenseID value of
* your application.</p><p>Maximum size 5 MB</p>
*/
inline UpdateApplicationResult& WithLicenseUrl(const char* value) { SetLicenseUrl(value); return *this;}
/**
* <p>The name of the application.</p><p>Minimum length=1. Maximum
* length=140</p><p>Pattern: "[a-zA-Z0-9\\-]+";</p>
*/
inline const Aws::String& GetName() const{ return m_name; }
/**
* <p>The name of the application.</p><p>Minimum length=1. Maximum
* length=140</p><p>Pattern: "[a-zA-Z0-9\\-]+";</p>
*/
inline void SetName(const Aws::String& value) { m_name = value; }
/**
* <p>The name of the application.</p><p>Minimum length=1. Maximum
* length=140</p><p>Pattern: "[a-zA-Z0-9\\-]+";</p>
*/
inline void SetName(Aws::String&& value) { m_name = std::move(value); }
/**
* <p>The name of the application.</p><p>Minimum length=1. Maximum
* length=140</p><p>Pattern: "[a-zA-Z0-9\\-]+";</p>
*/
inline void SetName(const char* value) { m_name.assign(value); }
/**
* <p>The name of the application.</p><p>Minimum length=1. Maximum
* length=140</p><p>Pattern: "[a-zA-Z0-9\\-]+";</p>
*/
inline UpdateApplicationResult& WithName(const Aws::String& value) { SetName(value); return *this;}
/**
* <p>The name of the application.</p><p>Minimum length=1. Maximum
* length=140</p><p>Pattern: "[a-zA-Z0-9\\-]+";</p>
*/
inline UpdateApplicationResult& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;}
/**
* <p>The name of the application.</p><p>Minimum length=1. Maximum
* length=140</p><p>Pattern: "[a-zA-Z0-9\\-]+";</p>
*/
inline UpdateApplicationResult& WithName(const char* value) { SetName(value); return *this;}
/**
* <p>A link to the readme file in Markdown language that contains a more detailed
* description of the application and how it works.</p><p>Maximum size 5 MB</p>
*/
inline const Aws::String& GetReadmeUrl() const{ return m_readmeUrl; }
/**
* <p>A link to the readme file in Markdown language that contains a more detailed
* description of the application and how it works.</p><p>Maximum size 5 MB</p>
*/
inline void SetReadmeUrl(const Aws::String& value) { m_readmeUrl = value; }
/**
* <p>A link to the readme file in Markdown language that contains a more detailed
* description of the application and how it works.</p><p>Maximum size 5 MB</p>
*/
inline void SetReadmeUrl(Aws::String&& value) { m_readmeUrl = std::move(value); }
/**
* <p>A link to the readme file in Markdown language that contains a more detailed
* description of the application and how it works.</p><p>Maximum size 5 MB</p>
*/
inline void SetReadmeUrl(const char* value) { m_readmeUrl.assign(value); }
/**
* <p>A link to the readme file in Markdown language that contains a more detailed
* description of the application and how it works.</p><p>Maximum size 5 MB</p>
*/
inline UpdateApplicationResult& WithReadmeUrl(const Aws::String& value) { SetReadmeUrl(value); return *this;}
/**
* <p>A link to the readme file in Markdown language that contains a more detailed
* description of the application and how it works.</p><p>Maximum size 5 MB</p>
*/
inline UpdateApplicationResult& WithReadmeUrl(Aws::String&& value) { SetReadmeUrl(std::move(value)); return *this;}
/**
* <p>A link to the readme file in Markdown language that contains a more detailed
* description of the application and how it works.</p><p>Maximum size 5 MB</p>
*/
inline UpdateApplicationResult& WithReadmeUrl(const char* value) { SetReadmeUrl(value); return *this;}
/**
* <p>A valid identifier from https://spdx.org/licenses/.</p>
*/
inline const Aws::String& GetSpdxLicenseId() const{ return m_spdxLicenseId; }
/**
* <p>A valid identifier from https://spdx.org/licenses/.</p>
*/
inline void SetSpdxLicenseId(const Aws::String& value) { m_spdxLicenseId = value; }
/**
* <p>A valid identifier from https://spdx.org/licenses/.</p>
*/
inline void SetSpdxLicenseId(Aws::String&& value) { m_spdxLicenseId = std::move(value); }
/**
* <p>A valid identifier from https://spdx.org/licenses/.</p>
*/
inline void SetSpdxLicenseId(const char* value) { m_spdxLicenseId.assign(value); }
/**
* <p>A valid identifier from https://spdx.org/licenses/.</p>
*/
inline UpdateApplicationResult& WithSpdxLicenseId(const Aws::String& value) { SetSpdxLicenseId(value); return *this;}
/**
* <p>A valid identifier from https://spdx.org/licenses/.</p>
*/
inline UpdateApplicationResult& WithSpdxLicenseId(Aws::String&& value) { SetSpdxLicenseId(std::move(value)); return *this;}
/**
* <p>A valid identifier from https://spdx.org/licenses/.</p>
*/
inline UpdateApplicationResult& WithSpdxLicenseId(const char* value) { SetSpdxLicenseId(value); return *this;}
/**
* <p>The URL to the public profile of a verified author. This URL is submitted by
* the author.</p>
*/
inline const Aws::String& GetVerifiedAuthorUrl() const{ return m_verifiedAuthorUrl; }
/**
* <p>The URL to the public profile of a verified author. This URL is submitted by
* the author.</p>
*/
inline void SetVerifiedAuthorUrl(const Aws::String& value) { m_verifiedAuthorUrl = value; }
/**
* <p>The URL to the public profile of a verified author. This URL is submitted by
* the author.</p>
*/
inline void SetVerifiedAuthorUrl(Aws::String&& value) { m_verifiedAuthorUrl = std::move(value); }
/**
* <p>The URL to the public profile of a verified author. This URL is submitted by
* the author.</p>
*/
inline void SetVerifiedAuthorUrl(const char* value) { m_verifiedAuthorUrl.assign(value); }
/**
* <p>The URL to the public profile of a verified author. This URL is submitted by
* the author.</p>
*/
inline UpdateApplicationResult& WithVerifiedAuthorUrl(const Aws::String& value) { SetVerifiedAuthorUrl(value); return *this;}
/**
* <p>The URL to the public profile of a verified author. This URL is submitted by
* the author.</p>
*/
inline UpdateApplicationResult& WithVerifiedAuthorUrl(Aws::String&& value) { SetVerifiedAuthorUrl(std::move(value)); return *this;}
/**
* <p>The URL to the public profile of a verified author. This URL is submitted by
* the author.</p>
*/
inline UpdateApplicationResult& WithVerifiedAuthorUrl(const char* value) { SetVerifiedAuthorUrl(value); return *this;}
/**
* <p>Version information about the application.</p>
*/
inline const Version& GetVersion() const{ return m_version; }
/**
* <p>Version information about the application.</p>
*/
inline void SetVersion(const Version& value) { m_version = value; }
/**
* <p>Version information about the application.</p>
*/
inline void SetVersion(Version&& value) { m_version = std::move(value); }
/**
* <p>Version information about the application.</p>
*/
inline UpdateApplicationResult& WithVersion(const Version& value) { SetVersion(value); return *this;}
/**
* <p>Version information about the application.</p>
*/
inline UpdateApplicationResult& WithVersion(Version&& value) { SetVersion(std::move(value)); return *this;}
private:
Aws::String m_applicationId;
Aws::String m_author;
Aws::String m_creationTime;
Aws::String m_description;
Aws::String m_homePageUrl;
bool m_isVerifiedAuthor;
Aws::Vector<Aws::String> m_labels;
Aws::String m_licenseUrl;
Aws::String m_name;
Aws::String m_readmeUrl;
Aws::String m_spdxLicenseId;
Aws::String m_verifiedAuthorUrl;
Version m_version;
};
} // namespace Model
} // namespace ServerlessApplicationRepository
} // namespace Aws

View File

@@ -0,0 +1,919 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/serverlessrepo/ServerlessApplicationRepository_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/serverlessrepo/model/ParameterDefinition.h>
#include <aws/serverlessrepo/model/Capability.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace ServerlessApplicationRepository
{
namespace Model
{
/**
* <p>Application version details.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/Version">AWS
* API Reference</a></p>
*/
class AWS_SERVERLESSAPPLICATIONREPOSITORY_API Version
{
public:
Version();
Version(Aws::Utils::Json::JsonView jsonValue);
Version& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline const Aws::String& GetApplicationId() const{ return m_applicationId; }
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline bool ApplicationIdHasBeenSet() const { return m_applicationIdHasBeenSet; }
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline void SetApplicationId(const Aws::String& value) { m_applicationIdHasBeenSet = true; m_applicationId = value; }
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline void SetApplicationId(Aws::String&& value) { m_applicationIdHasBeenSet = true; m_applicationId = std::move(value); }
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline void SetApplicationId(const char* value) { m_applicationIdHasBeenSet = true; m_applicationId.assign(value); }
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline Version& WithApplicationId(const Aws::String& value) { SetApplicationId(value); return *this;}
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline Version& WithApplicationId(Aws::String&& value) { SetApplicationId(std::move(value)); return *this;}
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline Version& WithApplicationId(const char* value) { SetApplicationId(value); return *this;}
/**
* <p>The date and time this resource was created.</p>
*/
inline const Aws::String& GetCreationTime() const{ return m_creationTime; }
/**
* <p>The date and time this resource was created.</p>
*/
inline bool CreationTimeHasBeenSet() const { return m_creationTimeHasBeenSet; }
/**
* <p>The date and time this resource was created.</p>
*/
inline void SetCreationTime(const Aws::String& value) { m_creationTimeHasBeenSet = true; m_creationTime = value; }
/**
* <p>The date and time this resource was created.</p>
*/
inline void SetCreationTime(Aws::String&& value) { m_creationTimeHasBeenSet = true; m_creationTime = std::move(value); }
/**
* <p>The date and time this resource was created.</p>
*/
inline void SetCreationTime(const char* value) { m_creationTimeHasBeenSet = true; m_creationTime.assign(value); }
/**
* <p>The date and time this resource was created.</p>
*/
inline Version& WithCreationTime(const Aws::String& value) { SetCreationTime(value); return *this;}
/**
* <p>The date and time this resource was created.</p>
*/
inline Version& WithCreationTime(Aws::String&& value) { SetCreationTime(std::move(value)); return *this;}
/**
* <p>The date and time this resource was created.</p>
*/
inline Version& WithCreationTime(const char* value) { SetCreationTime(value); return *this;}
/**
* <p>An array of parameter types supported by the application.</p>
*/
inline const Aws::Vector<ParameterDefinition>& GetParameterDefinitions() const{ return m_parameterDefinitions; }
/**
* <p>An array of parameter types supported by the application.</p>
*/
inline bool ParameterDefinitionsHasBeenSet() const { return m_parameterDefinitionsHasBeenSet; }
/**
* <p>An array of parameter types supported by the application.</p>
*/
inline void SetParameterDefinitions(const Aws::Vector<ParameterDefinition>& value) { m_parameterDefinitionsHasBeenSet = true; m_parameterDefinitions = value; }
/**
* <p>An array of parameter types supported by the application.</p>
*/
inline void SetParameterDefinitions(Aws::Vector<ParameterDefinition>&& value) { m_parameterDefinitionsHasBeenSet = true; m_parameterDefinitions = std::move(value); }
/**
* <p>An array of parameter types supported by the application.</p>
*/
inline Version& WithParameterDefinitions(const Aws::Vector<ParameterDefinition>& value) { SetParameterDefinitions(value); return *this;}
/**
* <p>An array of parameter types supported by the application.</p>
*/
inline Version& WithParameterDefinitions(Aws::Vector<ParameterDefinition>&& value) { SetParameterDefinitions(std::move(value)); return *this;}
/**
* <p>An array of parameter types supported by the application.</p>
*/
inline Version& AddParameterDefinitions(const ParameterDefinition& value) { m_parameterDefinitionsHasBeenSet = true; m_parameterDefinitions.push_back(value); return *this; }
/**
* <p>An array of parameter types supported by the application.</p>
*/
inline Version& AddParameterDefinitions(ParameterDefinition&& value) { m_parameterDefinitionsHasBeenSet = true; m_parameterDefinitions.push_back(std::move(value)); return *this; }
/**
* <p>A list of values that you must specify before you can deploy certain
* applications.
Some applications might include resources that can affect
* permissions in your AWS
account, for example, by creating new AWS Identity and
* Access Management (IAM) users.
For those applications, you must explicitly
* acknowledge their capabilities by
specifying this parameter.</p><p>The only
* valid values are CAPABILITY_IAM, CAPABILITY_NAMED_IAM,
* CAPABILITY_RESOURCE_POLICY, and CAPABILITY_AUTO_EXPAND.</p><p>The following
* resources require you to specify CAPABILITY_IAM or
CAPABILITY_NAMED_IAM:
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html">AWS::IAM::Group</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html">AWS::IAM::InstanceProfile</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html">AWS::IAM::Policy</a>,
* and
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html">AWS::IAM::Role</a>.
* If the application contains IAM resources, you can specify either
* CAPABILITY_IAM
or CAPABILITY_NAMED_IAM. If the application contains IAM
* resources
with custom names, you must specify CAPABILITY_NAMED_IAM.</p><p>The
* following resources require you to specify CAPABILITY_RESOURCE_POLICY:
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html">AWS::Lambda::Permission</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html">AWS::IAM:Policy</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html">AWS::ApplicationAutoScaling::ScalingPolicy</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-policy.html">AWS::S3::BucketPolicy</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-policy.html">AWS::SQS::QueuePolicy</a>,
* and
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-policy.html">AWS::SNS::TopicPolicy</a>.</p><p>Applications
* that contain one or more nested applications require you to specify
* CAPABILITY_AUTO_EXPAND.</p><p>If your application template contains any of the
* above resources, we recommend that you review
all permissions associated with
* the application before deploying. If you don't specify
this parameter for an
* application that requires capabilities, the call will fail.</p>
*/
inline const Aws::Vector<Capability>& GetRequiredCapabilities() const{ return m_requiredCapabilities; }
/**
* <p>A list of values that you must specify before you can deploy certain
* applications.
Some applications might include resources that can affect
* permissions in your AWS
account, for example, by creating new AWS Identity and
* Access Management (IAM) users.
For those applications, you must explicitly
* acknowledge their capabilities by
specifying this parameter.</p><p>The only
* valid values are CAPABILITY_IAM, CAPABILITY_NAMED_IAM,
* CAPABILITY_RESOURCE_POLICY, and CAPABILITY_AUTO_EXPAND.</p><p>The following
* resources require you to specify CAPABILITY_IAM or
CAPABILITY_NAMED_IAM:
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html">AWS::IAM::Group</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html">AWS::IAM::InstanceProfile</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html">AWS::IAM::Policy</a>,
* and
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html">AWS::IAM::Role</a>.
* If the application contains IAM resources, you can specify either
* CAPABILITY_IAM
or CAPABILITY_NAMED_IAM. If the application contains IAM
* resources
with custom names, you must specify CAPABILITY_NAMED_IAM.</p><p>The
* following resources require you to specify CAPABILITY_RESOURCE_POLICY:
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html">AWS::Lambda::Permission</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html">AWS::IAM:Policy</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html">AWS::ApplicationAutoScaling::ScalingPolicy</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-policy.html">AWS::S3::BucketPolicy</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-policy.html">AWS::SQS::QueuePolicy</a>,
* and
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-policy.html">AWS::SNS::TopicPolicy</a>.</p><p>Applications
* that contain one or more nested applications require you to specify
* CAPABILITY_AUTO_EXPAND.</p><p>If your application template contains any of the
* above resources, we recommend that you review
all permissions associated with
* the application before deploying. If you don't specify
this parameter for an
* application that requires capabilities, the call will fail.</p>
*/
inline bool RequiredCapabilitiesHasBeenSet() const { return m_requiredCapabilitiesHasBeenSet; }
/**
* <p>A list of values that you must specify before you can deploy certain
* applications.
Some applications might include resources that can affect
* permissions in your AWS
account, for example, by creating new AWS Identity and
* Access Management (IAM) users.
For those applications, you must explicitly
* acknowledge their capabilities by
specifying this parameter.</p><p>The only
* valid values are CAPABILITY_IAM, CAPABILITY_NAMED_IAM,
* CAPABILITY_RESOURCE_POLICY, and CAPABILITY_AUTO_EXPAND.</p><p>The following
* resources require you to specify CAPABILITY_IAM or
CAPABILITY_NAMED_IAM:
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html">AWS::IAM::Group</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html">AWS::IAM::InstanceProfile</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html">AWS::IAM::Policy</a>,
* and
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html">AWS::IAM::Role</a>.
* If the application contains IAM resources, you can specify either
* CAPABILITY_IAM
or CAPABILITY_NAMED_IAM. If the application contains IAM
* resources
with custom names, you must specify CAPABILITY_NAMED_IAM.</p><p>The
* following resources require you to specify CAPABILITY_RESOURCE_POLICY:
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html">AWS::Lambda::Permission</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html">AWS::IAM:Policy</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html">AWS::ApplicationAutoScaling::ScalingPolicy</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-policy.html">AWS::S3::BucketPolicy</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-policy.html">AWS::SQS::QueuePolicy</a>,
* and
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-policy.html">AWS::SNS::TopicPolicy</a>.</p><p>Applications
* that contain one or more nested applications require you to specify
* CAPABILITY_AUTO_EXPAND.</p><p>If your application template contains any of the
* above resources, we recommend that you review
all permissions associated with
* the application before deploying. If you don't specify
this parameter for an
* application that requires capabilities, the call will fail.</p>
*/
inline void SetRequiredCapabilities(const Aws::Vector<Capability>& value) { m_requiredCapabilitiesHasBeenSet = true; m_requiredCapabilities = value; }
/**
* <p>A list of values that you must specify before you can deploy certain
* applications.
Some applications might include resources that can affect
* permissions in your AWS
account, for example, by creating new AWS Identity and
* Access Management (IAM) users.
For those applications, you must explicitly
* acknowledge their capabilities by
specifying this parameter.</p><p>The only
* valid values are CAPABILITY_IAM, CAPABILITY_NAMED_IAM,
* CAPABILITY_RESOURCE_POLICY, and CAPABILITY_AUTO_EXPAND.</p><p>The following
* resources require you to specify CAPABILITY_IAM or
CAPABILITY_NAMED_IAM:
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html">AWS::IAM::Group</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html">AWS::IAM::InstanceProfile</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html">AWS::IAM::Policy</a>,
* and
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html">AWS::IAM::Role</a>.
* If the application contains IAM resources, you can specify either
* CAPABILITY_IAM
or CAPABILITY_NAMED_IAM. If the application contains IAM
* resources
with custom names, you must specify CAPABILITY_NAMED_IAM.</p><p>The
* following resources require you to specify CAPABILITY_RESOURCE_POLICY:
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html">AWS::Lambda::Permission</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html">AWS::IAM:Policy</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html">AWS::ApplicationAutoScaling::ScalingPolicy</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-policy.html">AWS::S3::BucketPolicy</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-policy.html">AWS::SQS::QueuePolicy</a>,
* and
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-policy.html">AWS::SNS::TopicPolicy</a>.</p><p>Applications
* that contain one or more nested applications require you to specify
* CAPABILITY_AUTO_EXPAND.</p><p>If your application template contains any of the
* above resources, we recommend that you review
all permissions associated with
* the application before deploying. If you don't specify
this parameter for an
* application that requires capabilities, the call will fail.</p>
*/
inline void SetRequiredCapabilities(Aws::Vector<Capability>&& value) { m_requiredCapabilitiesHasBeenSet = true; m_requiredCapabilities = std::move(value); }
/**
* <p>A list of values that you must specify before you can deploy certain
* applications.
Some applications might include resources that can affect
* permissions in your AWS
account, for example, by creating new AWS Identity and
* Access Management (IAM) users.
For those applications, you must explicitly
* acknowledge their capabilities by
specifying this parameter.</p><p>The only
* valid values are CAPABILITY_IAM, CAPABILITY_NAMED_IAM,
* CAPABILITY_RESOURCE_POLICY, and CAPABILITY_AUTO_EXPAND.</p><p>The following
* resources require you to specify CAPABILITY_IAM or
CAPABILITY_NAMED_IAM:
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html">AWS::IAM::Group</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html">AWS::IAM::InstanceProfile</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html">AWS::IAM::Policy</a>,
* and
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html">AWS::IAM::Role</a>.
* If the application contains IAM resources, you can specify either
* CAPABILITY_IAM
or CAPABILITY_NAMED_IAM. If the application contains IAM
* resources
with custom names, you must specify CAPABILITY_NAMED_IAM.</p><p>The
* following resources require you to specify CAPABILITY_RESOURCE_POLICY:
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html">AWS::Lambda::Permission</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html">AWS::IAM:Policy</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html">AWS::ApplicationAutoScaling::ScalingPolicy</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-policy.html">AWS::S3::BucketPolicy</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-policy.html">AWS::SQS::QueuePolicy</a>,
* and
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-policy.html">AWS::SNS::TopicPolicy</a>.</p><p>Applications
* that contain one or more nested applications require you to specify
* CAPABILITY_AUTO_EXPAND.</p><p>If your application template contains any of the
* above resources, we recommend that you review
all permissions associated with
* the application before deploying. If you don't specify
this parameter for an
* application that requires capabilities, the call will fail.</p>
*/
inline Version& WithRequiredCapabilities(const Aws::Vector<Capability>& value) { SetRequiredCapabilities(value); return *this;}
/**
* <p>A list of values that you must specify before you can deploy certain
* applications.
Some applications might include resources that can affect
* permissions in your AWS
account, for example, by creating new AWS Identity and
* Access Management (IAM) users.
For those applications, you must explicitly
* acknowledge their capabilities by
specifying this parameter.</p><p>The only
* valid values are CAPABILITY_IAM, CAPABILITY_NAMED_IAM,
* CAPABILITY_RESOURCE_POLICY, and CAPABILITY_AUTO_EXPAND.</p><p>The following
* resources require you to specify CAPABILITY_IAM or
CAPABILITY_NAMED_IAM:
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html">AWS::IAM::Group</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html">AWS::IAM::InstanceProfile</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html">AWS::IAM::Policy</a>,
* and
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html">AWS::IAM::Role</a>.
* If the application contains IAM resources, you can specify either
* CAPABILITY_IAM
or CAPABILITY_NAMED_IAM. If the application contains IAM
* resources
with custom names, you must specify CAPABILITY_NAMED_IAM.</p><p>The
* following resources require you to specify CAPABILITY_RESOURCE_POLICY:
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html">AWS::Lambda::Permission</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html">AWS::IAM:Policy</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html">AWS::ApplicationAutoScaling::ScalingPolicy</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-policy.html">AWS::S3::BucketPolicy</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-policy.html">AWS::SQS::QueuePolicy</a>,
* and
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-policy.html">AWS::SNS::TopicPolicy</a>.</p><p>Applications
* that contain one or more nested applications require you to specify
* CAPABILITY_AUTO_EXPAND.</p><p>If your application template contains any of the
* above resources, we recommend that you review
all permissions associated with
* the application before deploying. If you don't specify
this parameter for an
* application that requires capabilities, the call will fail.</p>
*/
inline Version& WithRequiredCapabilities(Aws::Vector<Capability>&& value) { SetRequiredCapabilities(std::move(value)); return *this;}
/**
* <p>A list of values that you must specify before you can deploy certain
* applications.
Some applications might include resources that can affect
* permissions in your AWS
account, for example, by creating new AWS Identity and
* Access Management (IAM) users.
For those applications, you must explicitly
* acknowledge their capabilities by
specifying this parameter.</p><p>The only
* valid values are CAPABILITY_IAM, CAPABILITY_NAMED_IAM,
* CAPABILITY_RESOURCE_POLICY, and CAPABILITY_AUTO_EXPAND.</p><p>The following
* resources require you to specify CAPABILITY_IAM or
CAPABILITY_NAMED_IAM:
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html">AWS::IAM::Group</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html">AWS::IAM::InstanceProfile</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html">AWS::IAM::Policy</a>,
* and
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html">AWS::IAM::Role</a>.
* If the application contains IAM resources, you can specify either
* CAPABILITY_IAM
or CAPABILITY_NAMED_IAM. If the application contains IAM
* resources
with custom names, you must specify CAPABILITY_NAMED_IAM.</p><p>The
* following resources require you to specify CAPABILITY_RESOURCE_POLICY:
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html">AWS::Lambda::Permission</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html">AWS::IAM:Policy</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html">AWS::ApplicationAutoScaling::ScalingPolicy</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-policy.html">AWS::S3::BucketPolicy</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-policy.html">AWS::SQS::QueuePolicy</a>,
* and
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-policy.html">AWS::SNS::TopicPolicy</a>.</p><p>Applications
* that contain one or more nested applications require you to specify
* CAPABILITY_AUTO_EXPAND.</p><p>If your application template contains any of the
* above resources, we recommend that you review
all permissions associated with
* the application before deploying. If you don't specify
this parameter for an
* application that requires capabilities, the call will fail.</p>
*/
inline Version& AddRequiredCapabilities(const Capability& value) { m_requiredCapabilitiesHasBeenSet = true; m_requiredCapabilities.push_back(value); return *this; }
/**
* <p>A list of values that you must specify before you can deploy certain
* applications.
Some applications might include resources that can affect
* permissions in your AWS
account, for example, by creating new AWS Identity and
* Access Management (IAM) users.
For those applications, you must explicitly
* acknowledge their capabilities by
specifying this parameter.</p><p>The only
* valid values are CAPABILITY_IAM, CAPABILITY_NAMED_IAM,
* CAPABILITY_RESOURCE_POLICY, and CAPABILITY_AUTO_EXPAND.</p><p>The following
* resources require you to specify CAPABILITY_IAM or
CAPABILITY_NAMED_IAM:
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html">AWS::IAM::Group</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html">AWS::IAM::InstanceProfile</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html">AWS::IAM::Policy</a>,
* and
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html">AWS::IAM::Role</a>.
* If the application contains IAM resources, you can specify either
* CAPABILITY_IAM
or CAPABILITY_NAMED_IAM. If the application contains IAM
* resources
with custom names, you must specify CAPABILITY_NAMED_IAM.</p><p>The
* following resources require you to specify CAPABILITY_RESOURCE_POLICY:
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html">AWS::Lambda::Permission</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html">AWS::IAM:Policy</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html">AWS::ApplicationAutoScaling::ScalingPolicy</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-policy.html">AWS::S3::BucketPolicy</a>,
* <a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-policy.html">AWS::SQS::QueuePolicy</a>,
* and
<a
* href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-policy.html">AWS::SNS::TopicPolicy</a>.</p><p>Applications
* that contain one or more nested applications require you to specify
* CAPABILITY_AUTO_EXPAND.</p><p>If your application template contains any of the
* above resources, we recommend that you review
all permissions associated with
* the application before deploying. If you don't specify
this parameter for an
* application that requires capabilities, the call will fail.</p>
*/
inline Version& AddRequiredCapabilities(Capability&& value) { m_requiredCapabilitiesHasBeenSet = true; m_requiredCapabilities.push_back(std::move(value)); return *this; }
/**
* <p>Whether all of the AWS resources contained in this application are supported
* in the region
in which it is being retrieved.</p>
*/
inline bool GetResourcesSupported() const{ return m_resourcesSupported; }
/**
* <p>Whether all of the AWS resources contained in this application are supported
* in the region
in which it is being retrieved.</p>
*/
inline bool ResourcesSupportedHasBeenSet() const { return m_resourcesSupportedHasBeenSet; }
/**
* <p>Whether all of the AWS resources contained in this application are supported
* in the region
in which it is being retrieved.</p>
*/
inline void SetResourcesSupported(bool value) { m_resourcesSupportedHasBeenSet = true; m_resourcesSupported = value; }
/**
* <p>Whether all of the AWS resources contained in this application are supported
* in the region
in which it is being retrieved.</p>
*/
inline Version& WithResourcesSupported(bool value) { SetResourcesSupported(value); return *this;}
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline const Aws::String& GetSemanticVersion() const{ return m_semanticVersion; }
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline bool SemanticVersionHasBeenSet() const { return m_semanticVersionHasBeenSet; }
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline void SetSemanticVersion(const Aws::String& value) { m_semanticVersionHasBeenSet = true; m_semanticVersion = value; }
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline void SetSemanticVersion(Aws::String&& value) { m_semanticVersionHasBeenSet = true; m_semanticVersion = std::move(value); }
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline void SetSemanticVersion(const char* value) { m_semanticVersionHasBeenSet = true; m_semanticVersion.assign(value); }
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline Version& WithSemanticVersion(const Aws::String& value) { SetSemanticVersion(value); return *this;}
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline Version& WithSemanticVersion(Aws::String&& value) { SetSemanticVersion(std::move(value)); return *this;}
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline Version& WithSemanticVersion(const char* value) { SetSemanticVersion(value); return *this;}
/**
* <p>A link to the S3 object that contains the ZIP archive of the source code for
* this version of your application.</p><p>Maximum size 50 MB</p>
*/
inline const Aws::String& GetSourceCodeArchiveUrl() const{ return m_sourceCodeArchiveUrl; }
/**
* <p>A link to the S3 object that contains the ZIP archive of the source code for
* this version of your application.</p><p>Maximum size 50 MB</p>
*/
inline bool SourceCodeArchiveUrlHasBeenSet() const { return m_sourceCodeArchiveUrlHasBeenSet; }
/**
* <p>A link to the S3 object that contains the ZIP archive of the source code for
* this version of your application.</p><p>Maximum size 50 MB</p>
*/
inline void SetSourceCodeArchiveUrl(const Aws::String& value) { m_sourceCodeArchiveUrlHasBeenSet = true; m_sourceCodeArchiveUrl = value; }
/**
* <p>A link to the S3 object that contains the ZIP archive of the source code for
* this version of your application.</p><p>Maximum size 50 MB</p>
*/
inline void SetSourceCodeArchiveUrl(Aws::String&& value) { m_sourceCodeArchiveUrlHasBeenSet = true; m_sourceCodeArchiveUrl = std::move(value); }
/**
* <p>A link to the S3 object that contains the ZIP archive of the source code for
* this version of your application.</p><p>Maximum size 50 MB</p>
*/
inline void SetSourceCodeArchiveUrl(const char* value) { m_sourceCodeArchiveUrlHasBeenSet = true; m_sourceCodeArchiveUrl.assign(value); }
/**
* <p>A link to the S3 object that contains the ZIP archive of the source code for
* this version of your application.</p><p>Maximum size 50 MB</p>
*/
inline Version& WithSourceCodeArchiveUrl(const Aws::String& value) { SetSourceCodeArchiveUrl(value); return *this;}
/**
* <p>A link to the S3 object that contains the ZIP archive of the source code for
* this version of your application.</p><p>Maximum size 50 MB</p>
*/
inline Version& WithSourceCodeArchiveUrl(Aws::String&& value) { SetSourceCodeArchiveUrl(std::move(value)); return *this;}
/**
* <p>A link to the S3 object that contains the ZIP archive of the source code for
* this version of your application.</p><p>Maximum size 50 MB</p>
*/
inline Version& WithSourceCodeArchiveUrl(const char* value) { SetSourceCodeArchiveUrl(value); return *this;}
/**
* <p>A link to a public repository for the source code of your application, for
* example the URL of a specific GitHub commit.</p>
*/
inline const Aws::String& GetSourceCodeUrl() const{ return m_sourceCodeUrl; }
/**
* <p>A link to a public repository for the source code of your application, for
* example the URL of a specific GitHub commit.</p>
*/
inline bool SourceCodeUrlHasBeenSet() const { return m_sourceCodeUrlHasBeenSet; }
/**
* <p>A link to a public repository for the source code of your application, for
* example the URL of a specific GitHub commit.</p>
*/
inline void SetSourceCodeUrl(const Aws::String& value) { m_sourceCodeUrlHasBeenSet = true; m_sourceCodeUrl = value; }
/**
* <p>A link to a public repository for the source code of your application, for
* example the URL of a specific GitHub commit.</p>
*/
inline void SetSourceCodeUrl(Aws::String&& value) { m_sourceCodeUrlHasBeenSet = true; m_sourceCodeUrl = std::move(value); }
/**
* <p>A link to a public repository for the source code of your application, for
* example the URL of a specific GitHub commit.</p>
*/
inline void SetSourceCodeUrl(const char* value) { m_sourceCodeUrlHasBeenSet = true; m_sourceCodeUrl.assign(value); }
/**
* <p>A link to a public repository for the source code of your application, for
* example the URL of a specific GitHub commit.</p>
*/
inline Version& WithSourceCodeUrl(const Aws::String& value) { SetSourceCodeUrl(value); return *this;}
/**
* <p>A link to a public repository for the source code of your application, for
* example the URL of a specific GitHub commit.</p>
*/
inline Version& WithSourceCodeUrl(Aws::String&& value) { SetSourceCodeUrl(std::move(value)); return *this;}
/**
* <p>A link to a public repository for the source code of your application, for
* example the URL of a specific GitHub commit.</p>
*/
inline Version& WithSourceCodeUrl(const char* value) { SetSourceCodeUrl(value); return *this;}
/**
* <p>A link to the packaged AWS SAM template of your application.</p>
*/
inline const Aws::String& GetTemplateUrl() const{ return m_templateUrl; }
/**
* <p>A link to the packaged AWS SAM template of your application.</p>
*/
inline bool TemplateUrlHasBeenSet() const { return m_templateUrlHasBeenSet; }
/**
* <p>A link to the packaged AWS SAM template of your application.</p>
*/
inline void SetTemplateUrl(const Aws::String& value) { m_templateUrlHasBeenSet = true; m_templateUrl = value; }
/**
* <p>A link to the packaged AWS SAM template of your application.</p>
*/
inline void SetTemplateUrl(Aws::String&& value) { m_templateUrlHasBeenSet = true; m_templateUrl = std::move(value); }
/**
* <p>A link to the packaged AWS SAM template of your application.</p>
*/
inline void SetTemplateUrl(const char* value) { m_templateUrlHasBeenSet = true; m_templateUrl.assign(value); }
/**
* <p>A link to the packaged AWS SAM template of your application.</p>
*/
inline Version& WithTemplateUrl(const Aws::String& value) { SetTemplateUrl(value); return *this;}
/**
* <p>A link to the packaged AWS SAM template of your application.</p>
*/
inline Version& WithTemplateUrl(Aws::String&& value) { SetTemplateUrl(std::move(value)); return *this;}
/**
* <p>A link to the packaged AWS SAM template of your application.</p>
*/
inline Version& WithTemplateUrl(const char* value) { SetTemplateUrl(value); return *this;}
private:
Aws::String m_applicationId;
bool m_applicationIdHasBeenSet;
Aws::String m_creationTime;
bool m_creationTimeHasBeenSet;
Aws::Vector<ParameterDefinition> m_parameterDefinitions;
bool m_parameterDefinitionsHasBeenSet;
Aws::Vector<Capability> m_requiredCapabilities;
bool m_requiredCapabilitiesHasBeenSet;
bool m_resourcesSupported;
bool m_resourcesSupportedHasBeenSet;
Aws::String m_semanticVersion;
bool m_semanticVersionHasBeenSet;
Aws::String m_sourceCodeArchiveUrl;
bool m_sourceCodeArchiveUrlHasBeenSet;
Aws::String m_sourceCodeUrl;
bool m_sourceCodeUrlHasBeenSet;
Aws::String m_templateUrl;
bool m_templateUrlHasBeenSet;
};
} // namespace Model
} // namespace ServerlessApplicationRepository
} // namespace Aws

View File

@@ -0,0 +1,252 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/serverlessrepo/ServerlessApplicationRepository_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 ServerlessApplicationRepository
{
namespace Model
{
/**
* <p>An application version summary.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/VersionSummary">AWS
* API Reference</a></p>
*/
class AWS_SERVERLESSAPPLICATIONREPOSITORY_API VersionSummary
{
public:
VersionSummary();
VersionSummary(Aws::Utils::Json::JsonView jsonValue);
VersionSummary& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline const Aws::String& GetApplicationId() const{ return m_applicationId; }
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline bool ApplicationIdHasBeenSet() const { return m_applicationIdHasBeenSet; }
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline void SetApplicationId(const Aws::String& value) { m_applicationIdHasBeenSet = true; m_applicationId = value; }
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline void SetApplicationId(Aws::String&& value) { m_applicationIdHasBeenSet = true; m_applicationId = std::move(value); }
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline void SetApplicationId(const char* value) { m_applicationIdHasBeenSet = true; m_applicationId.assign(value); }
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline VersionSummary& WithApplicationId(const Aws::String& value) { SetApplicationId(value); return *this;}
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline VersionSummary& WithApplicationId(Aws::String&& value) { SetApplicationId(std::move(value)); return *this;}
/**
* <p>The application Amazon Resource Name (ARN).</p>
*/
inline VersionSummary& WithApplicationId(const char* value) { SetApplicationId(value); return *this;}
/**
* <p>The date and time this resource was created.</p>
*/
inline const Aws::String& GetCreationTime() const{ return m_creationTime; }
/**
* <p>The date and time this resource was created.</p>
*/
inline bool CreationTimeHasBeenSet() const { return m_creationTimeHasBeenSet; }
/**
* <p>The date and time this resource was created.</p>
*/
inline void SetCreationTime(const Aws::String& value) { m_creationTimeHasBeenSet = true; m_creationTime = value; }
/**
* <p>The date and time this resource was created.</p>
*/
inline void SetCreationTime(Aws::String&& value) { m_creationTimeHasBeenSet = true; m_creationTime = std::move(value); }
/**
* <p>The date and time this resource was created.</p>
*/
inline void SetCreationTime(const char* value) { m_creationTimeHasBeenSet = true; m_creationTime.assign(value); }
/**
* <p>The date and time this resource was created.</p>
*/
inline VersionSummary& WithCreationTime(const Aws::String& value) { SetCreationTime(value); return *this;}
/**
* <p>The date and time this resource was created.</p>
*/
inline VersionSummary& WithCreationTime(Aws::String&& value) { SetCreationTime(std::move(value)); return *this;}
/**
* <p>The date and time this resource was created.</p>
*/
inline VersionSummary& WithCreationTime(const char* value) { SetCreationTime(value); return *this;}
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline const Aws::String& GetSemanticVersion() const{ return m_semanticVersion; }
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline bool SemanticVersionHasBeenSet() const { return m_semanticVersionHasBeenSet; }
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline void SetSemanticVersion(const Aws::String& value) { m_semanticVersionHasBeenSet = true; m_semanticVersion = value; }
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline void SetSemanticVersion(Aws::String&& value) { m_semanticVersionHasBeenSet = true; m_semanticVersion = std::move(value); }
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline void SetSemanticVersion(const char* value) { m_semanticVersionHasBeenSet = true; m_semanticVersion.assign(value); }
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline VersionSummary& WithSemanticVersion(const Aws::String& value) { SetSemanticVersion(value); return *this;}
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline VersionSummary& WithSemanticVersion(Aws::String&& value) { SetSemanticVersion(std::move(value)); return *this;}
/**
* <p>The semantic version of the application:</p><p>
<a
* href="https://semver.org/">https://semver.org/</a>
</p>
*/
inline VersionSummary& WithSemanticVersion(const char* value) { SetSemanticVersion(value); return *this;}
/**
* <p>A link to a public repository for the source code of your application, for
* example the URL of a specific GitHub commit.</p>
*/
inline const Aws::String& GetSourceCodeUrl() const{ return m_sourceCodeUrl; }
/**
* <p>A link to a public repository for the source code of your application, for
* example the URL of a specific GitHub commit.</p>
*/
inline bool SourceCodeUrlHasBeenSet() const { return m_sourceCodeUrlHasBeenSet; }
/**
* <p>A link to a public repository for the source code of your application, for
* example the URL of a specific GitHub commit.</p>
*/
inline void SetSourceCodeUrl(const Aws::String& value) { m_sourceCodeUrlHasBeenSet = true; m_sourceCodeUrl = value; }
/**
* <p>A link to a public repository for the source code of your application, for
* example the URL of a specific GitHub commit.</p>
*/
inline void SetSourceCodeUrl(Aws::String&& value) { m_sourceCodeUrlHasBeenSet = true; m_sourceCodeUrl = std::move(value); }
/**
* <p>A link to a public repository for the source code of your application, for
* example the URL of a specific GitHub commit.</p>
*/
inline void SetSourceCodeUrl(const char* value) { m_sourceCodeUrlHasBeenSet = true; m_sourceCodeUrl.assign(value); }
/**
* <p>A link to a public repository for the source code of your application, for
* example the URL of a specific GitHub commit.</p>
*/
inline VersionSummary& WithSourceCodeUrl(const Aws::String& value) { SetSourceCodeUrl(value); return *this;}
/**
* <p>A link to a public repository for the source code of your application, for
* example the URL of a specific GitHub commit.</p>
*/
inline VersionSummary& WithSourceCodeUrl(Aws::String&& value) { SetSourceCodeUrl(std::move(value)); return *this;}
/**
* <p>A link to a public repository for the source code of your application, for
* example the URL of a specific GitHub commit.</p>
*/
inline VersionSummary& WithSourceCodeUrl(const char* value) { SetSourceCodeUrl(value); return *this;}
private:
Aws::String m_applicationId;
bool m_applicationIdHasBeenSet;
Aws::String m_creationTime;
bool m_creationTimeHasBeenSet;
Aws::String m_semanticVersion;
bool m_semanticVersionHasBeenSet;
Aws::String m_sourceCodeUrl;
bool m_sourceCodeUrlHasBeenSet;
};
} // namespace Model
} // namespace ServerlessApplicationRepository
} // namespace Aws