/* * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. */ /* * Do not modify this file. This file is generated from the serverlessrepo-2017-09-08.normal.json service model. */ using System; using System.Runtime.ExceptionServices; using System.Threading; using System.Threading.Tasks; using System.Collections.Generic; using System.Net; using Amazon.ServerlessApplicationRepository.Model; using Amazon.ServerlessApplicationRepository.Model.Internal.MarshallTransformations; using Amazon.ServerlessApplicationRepository.Internal; using Amazon.Runtime; using Amazon.Runtime.Internal; using Amazon.Runtime.Internal.Auth; using Amazon.Runtime.Internal.Transform; namespace Amazon.ServerlessApplicationRepository { /// /// Implementation for accessing ServerlessApplicationRepository /// /// 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. /// /// /// /// 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. /// /// /// /// 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. /// /// /// /// The AWS Serverless Application Repository Developer Guide contains more information /// about the two developer experiences available: /// /// /// public partial class AmazonServerlessApplicationRepositoryClient : AmazonServiceClient, IAmazonServerlessApplicationRepository { private static IServiceMetadata serviceMetadata = new AmazonServerlessApplicationRepositoryMetadata(); #region Constructors /// /// Constructs AmazonServerlessApplicationRepositoryClient with the credentials loaded from the application's /// default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance. /// /// Example App.config with credentials set. /// /// <?xml version="1.0" encoding="utf-8" ?> /// <configuration> /// <appSettings> /// <add key="AWSProfileName" value="AWS Default"/> /// </appSettings> /// </configuration> /// /// /// public AmazonServerlessApplicationRepositoryClient() : base(FallbackCredentialsFactory.GetCredentials(), new AmazonServerlessApplicationRepositoryConfig()) { } /// /// Constructs AmazonServerlessApplicationRepositoryClient with the credentials loaded from the application's /// default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance. /// /// Example App.config with credentials set. /// /// <?xml version="1.0" encoding="utf-8" ?> /// <configuration> /// <appSettings> /// <add key="AWSProfileName" value="AWS Default"/> /// </appSettings> /// </configuration> /// /// /// /// The region to connect. public AmazonServerlessApplicationRepositoryClient(RegionEndpoint region) : base(FallbackCredentialsFactory.GetCredentials(), new AmazonServerlessApplicationRepositoryConfig{RegionEndpoint = region}) { } /// /// Constructs AmazonServerlessApplicationRepositoryClient with the credentials loaded from the application's /// default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance. /// /// Example App.config with credentials set. /// /// <?xml version="1.0" encoding="utf-8" ?> /// <configuration> /// <appSettings> /// <add key="AWSProfileName" value="AWS Default"/> /// </appSettings> /// </configuration> /// /// /// /// The AmazonServerlessApplicationRepositoryClient Configuration Object public AmazonServerlessApplicationRepositoryClient(AmazonServerlessApplicationRepositoryConfig config) : base(FallbackCredentialsFactory.GetCredentials(config), config){} /// /// Constructs AmazonServerlessApplicationRepositoryClient with AWS Credentials /// /// AWS Credentials public AmazonServerlessApplicationRepositoryClient(AWSCredentials credentials) : this(credentials, new AmazonServerlessApplicationRepositoryConfig()) { } /// /// Constructs AmazonServerlessApplicationRepositoryClient with AWS Credentials /// /// AWS Credentials /// The region to connect. public AmazonServerlessApplicationRepositoryClient(AWSCredentials credentials, RegionEndpoint region) : this(credentials, new AmazonServerlessApplicationRepositoryConfig{RegionEndpoint = region}) { } /// /// Constructs AmazonServerlessApplicationRepositoryClient with AWS Credentials and an /// AmazonServerlessApplicationRepositoryClient Configuration object. /// /// AWS Credentials /// The AmazonServerlessApplicationRepositoryClient Configuration Object public AmazonServerlessApplicationRepositoryClient(AWSCredentials credentials, AmazonServerlessApplicationRepositoryConfig clientConfig) : base(credentials, clientConfig) { } /// /// Constructs AmazonServerlessApplicationRepositoryClient with AWS Access Key ID and AWS Secret Key /// /// AWS Access Key ID /// AWS Secret Access Key public AmazonServerlessApplicationRepositoryClient(string awsAccessKeyId, string awsSecretAccessKey) : this(awsAccessKeyId, awsSecretAccessKey, new AmazonServerlessApplicationRepositoryConfig()) { } /// /// Constructs AmazonServerlessApplicationRepositoryClient with AWS Access Key ID and AWS Secret Key /// /// AWS Access Key ID /// AWS Secret Access Key /// The region to connect. public AmazonServerlessApplicationRepositoryClient(string awsAccessKeyId, string awsSecretAccessKey, RegionEndpoint region) : this(awsAccessKeyId, awsSecretAccessKey, new AmazonServerlessApplicationRepositoryConfig() {RegionEndpoint=region}) { } /// /// Constructs AmazonServerlessApplicationRepositoryClient with AWS Access Key ID, AWS Secret Key and an /// AmazonServerlessApplicationRepositoryClient Configuration object. /// /// AWS Access Key ID /// AWS Secret Access Key /// The AmazonServerlessApplicationRepositoryClient Configuration Object public AmazonServerlessApplicationRepositoryClient(string awsAccessKeyId, string awsSecretAccessKey, AmazonServerlessApplicationRepositoryConfig clientConfig) : base(awsAccessKeyId, awsSecretAccessKey, clientConfig) { } /// /// Constructs AmazonServerlessApplicationRepositoryClient with AWS Access Key ID and AWS Secret Key /// /// AWS Access Key ID /// AWS Secret Access Key /// AWS Session Token public AmazonServerlessApplicationRepositoryClient(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken) : this(awsAccessKeyId, awsSecretAccessKey, awsSessionToken, new AmazonServerlessApplicationRepositoryConfig()) { } /// /// Constructs AmazonServerlessApplicationRepositoryClient with AWS Access Key ID and AWS Secret Key /// /// AWS Access Key ID /// AWS Secret Access Key /// AWS Session Token /// The region to connect. public AmazonServerlessApplicationRepositoryClient(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken, RegionEndpoint region) : this(awsAccessKeyId, awsSecretAccessKey, awsSessionToken, new AmazonServerlessApplicationRepositoryConfig{RegionEndpoint = region}) { } /// /// Constructs AmazonServerlessApplicationRepositoryClient with AWS Access Key ID, AWS Secret Key and an /// AmazonServerlessApplicationRepositoryClient Configuration object. /// /// AWS Access Key ID /// AWS Secret Access Key /// AWS Session Token /// The AmazonServerlessApplicationRepositoryClient Configuration Object public AmazonServerlessApplicationRepositoryClient(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken, AmazonServerlessApplicationRepositoryConfig clientConfig) : base(awsAccessKeyId, awsSecretAccessKey, awsSessionToken, clientConfig) { } #endregion #if AWS_ASYNC_ENUMERABLES_API private IServerlessApplicationRepositoryPaginatorFactory _paginators; /// /// Paginators for the service /// public IServerlessApplicationRepositoryPaginatorFactory Paginators { get { if (this._paginators == null) { this._paginators = new ServerlessApplicationRepositoryPaginatorFactory(this); } return this._paginators; } } #endif #region Overrides /// /// Creates the signer for the service. /// protected override AbstractAWSSigner CreateSigner() { return new AWS4Signer(); } /// /// Customizes the runtime pipeline. /// /// Runtime pipeline for the current client. protected override void CustomizeRuntimePipeline(RuntimePipeline pipeline) { pipeline.RemoveHandler(); pipeline.AddHandlerAfter(new AmazonServerlessApplicationRepositoryEndpointResolver()); } /// /// Capture metadata for the service. /// protected override IServiceMetadata ServiceMetadata { get { return serviceMetadata; } } #endregion #region Dispose /// /// Disposes the service client. /// protected override void Dispose(bool disposing) { base.Dispose(disposing); } #endregion #region CreateApplication internal virtual CreateApplicationResponse CreateApplication(CreateApplicationRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = CreateApplicationRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateApplicationResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Creates an application, optionally including an AWS SAM file to create the first application /// version in the same call. /// /// Container for the necessary parameters to execute the CreateApplication service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the CreateApplication service method, as returned by ServerlessApplicationRepository. /// /// One of the parameters in the request is invalid. /// /// /// The resource already exists. /// /// /// The client is not authenticated. /// /// /// The AWS Serverless Application Repository service encountered an internal error. /// /// /// The client is sending more than the allowed number of requests per unit of time. /// /// REST API Reference for CreateApplication Operation public virtual Task CreateApplicationAsync(CreateApplicationRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = CreateApplicationRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateApplicationResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region CreateApplicationVersion internal virtual CreateApplicationVersionResponse CreateApplicationVersion(CreateApplicationVersionRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = CreateApplicationVersionRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateApplicationVersionResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Creates an application version. /// /// Container for the necessary parameters to execute the CreateApplicationVersion service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the CreateApplicationVersion service method, as returned by ServerlessApplicationRepository. /// /// One of the parameters in the request is invalid. /// /// /// The resource already exists. /// /// /// The client is not authenticated. /// /// /// The AWS Serverless Application Repository service encountered an internal error. /// /// /// The client is sending more than the allowed number of requests per unit of time. /// /// REST API Reference for CreateApplicationVersion Operation public virtual Task CreateApplicationVersionAsync(CreateApplicationVersionRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = CreateApplicationVersionRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateApplicationVersionResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region CreateCloudFormationChangeSet internal virtual CreateCloudFormationChangeSetResponse CreateCloudFormationChangeSet(CreateCloudFormationChangeSetRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = CreateCloudFormationChangeSetRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateCloudFormationChangeSetResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Creates an AWS CloudFormation change set for the given application. /// /// Container for the necessary parameters to execute the CreateCloudFormationChangeSet service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the CreateCloudFormationChangeSet service method, as returned by ServerlessApplicationRepository. /// /// One of the parameters in the request is invalid. /// /// /// The client is not authenticated. /// /// /// The AWS Serverless Application Repository service encountered an internal error. /// /// /// The client is sending more than the allowed number of requests per unit of time. /// /// REST API Reference for CreateCloudFormationChangeSet Operation public virtual Task CreateCloudFormationChangeSetAsync(CreateCloudFormationChangeSetRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = CreateCloudFormationChangeSetRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateCloudFormationChangeSetResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region CreateCloudFormationTemplate internal virtual CreateCloudFormationTemplateResponse CreateCloudFormationTemplate(CreateCloudFormationTemplateRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = CreateCloudFormationTemplateRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateCloudFormationTemplateResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Creates an AWS CloudFormation template. /// /// Container for the necessary parameters to execute the CreateCloudFormationTemplate service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the CreateCloudFormationTemplate service method, as returned by ServerlessApplicationRepository. /// /// One of the parameters in the request is invalid. /// /// /// The client is not authenticated. /// /// /// The AWS Serverless Application Repository service encountered an internal error. /// /// /// The resource (for example, an access policy statement) specified in the request doesn't /// exist. /// /// /// The client is sending more than the allowed number of requests per unit of time. /// /// REST API Reference for CreateCloudFormationTemplate Operation public virtual Task CreateCloudFormationTemplateAsync(CreateCloudFormationTemplateRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = CreateCloudFormationTemplateRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateCloudFormationTemplateResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region DeleteApplication internal virtual DeleteApplicationResponse DeleteApplication(DeleteApplicationRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteApplicationRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteApplicationResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Deletes the specified application. /// /// Container for the necessary parameters to execute the DeleteApplication service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the DeleteApplication service method, as returned by ServerlessApplicationRepository. /// /// One of the parameters in the request is invalid. /// /// /// The resource already exists. /// /// /// The client is not authenticated. /// /// /// The AWS Serverless Application Repository service encountered an internal error. /// /// /// The resource (for example, an access policy statement) specified in the request doesn't /// exist. /// /// /// The client is sending more than the allowed number of requests per unit of time. /// /// REST API Reference for DeleteApplication Operation public virtual Task DeleteApplicationAsync(DeleteApplicationRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteApplicationRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteApplicationResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region GetApplication internal virtual GetApplicationResponse GetApplication(GetApplicationRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = GetApplicationRequestMarshaller.Instance; options.ResponseUnmarshaller = GetApplicationResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Gets the specified application. /// /// Container for the necessary parameters to execute the GetApplication service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the GetApplication service method, as returned by ServerlessApplicationRepository. /// /// One of the parameters in the request is invalid. /// /// /// The client is not authenticated. /// /// /// The AWS Serverless Application Repository service encountered an internal error. /// /// /// The resource (for example, an access policy statement) specified in the request doesn't /// exist. /// /// /// The client is sending more than the allowed number of requests per unit of time. /// /// REST API Reference for GetApplication Operation public virtual Task GetApplicationAsync(GetApplicationRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = GetApplicationRequestMarshaller.Instance; options.ResponseUnmarshaller = GetApplicationResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region GetApplicationPolicy internal virtual GetApplicationPolicyResponse GetApplicationPolicy(GetApplicationPolicyRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = GetApplicationPolicyRequestMarshaller.Instance; options.ResponseUnmarshaller = GetApplicationPolicyResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Retrieves the policy for the application. /// /// Container for the necessary parameters to execute the GetApplicationPolicy service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the GetApplicationPolicy service method, as returned by ServerlessApplicationRepository. /// /// One of the parameters in the request is invalid. /// /// /// The client is not authenticated. /// /// /// The AWS Serverless Application Repository service encountered an internal error. /// /// /// The resource (for example, an access policy statement) specified in the request doesn't /// exist. /// /// /// The client is sending more than the allowed number of requests per unit of time. /// /// REST API Reference for GetApplicationPolicy Operation public virtual Task GetApplicationPolicyAsync(GetApplicationPolicyRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = GetApplicationPolicyRequestMarshaller.Instance; options.ResponseUnmarshaller = GetApplicationPolicyResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region GetCloudFormationTemplate internal virtual GetCloudFormationTemplateResponse GetCloudFormationTemplate(GetCloudFormationTemplateRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = GetCloudFormationTemplateRequestMarshaller.Instance; options.ResponseUnmarshaller = GetCloudFormationTemplateResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Gets the specified AWS CloudFormation template. /// /// Container for the necessary parameters to execute the GetCloudFormationTemplate service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the GetCloudFormationTemplate service method, as returned by ServerlessApplicationRepository. /// /// One of the parameters in the request is invalid. /// /// /// The client is not authenticated. /// /// /// The AWS Serverless Application Repository service encountered an internal error. /// /// /// The resource (for example, an access policy statement) specified in the request doesn't /// exist. /// /// /// The client is sending more than the allowed number of requests per unit of time. /// /// REST API Reference for GetCloudFormationTemplate Operation public virtual Task GetCloudFormationTemplateAsync(GetCloudFormationTemplateRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = GetCloudFormationTemplateRequestMarshaller.Instance; options.ResponseUnmarshaller = GetCloudFormationTemplateResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region ListApplicationDependencies internal virtual ListApplicationDependenciesResponse ListApplicationDependencies(ListApplicationDependenciesRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = ListApplicationDependenciesRequestMarshaller.Instance; options.ResponseUnmarshaller = ListApplicationDependenciesResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Retrieves the list of applications nested in the containing application. /// /// Container for the necessary parameters to execute the ListApplicationDependencies service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the ListApplicationDependencies service method, as returned by ServerlessApplicationRepository. /// /// One of the parameters in the request is invalid. /// /// /// The client is not authenticated. /// /// /// The AWS Serverless Application Repository service encountered an internal error. /// /// /// The resource (for example, an access policy statement) specified in the request doesn't /// exist. /// /// /// The client is sending more than the allowed number of requests per unit of time. /// /// REST API Reference for ListApplicationDependencies Operation public virtual Task ListApplicationDependenciesAsync(ListApplicationDependenciesRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = ListApplicationDependenciesRequestMarshaller.Instance; options.ResponseUnmarshaller = ListApplicationDependenciesResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region ListApplications internal virtual ListApplicationsResponse ListApplications(ListApplicationsRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = ListApplicationsRequestMarshaller.Instance; options.ResponseUnmarshaller = ListApplicationsResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Lists applications owned by the requester. /// /// Container for the necessary parameters to execute the ListApplications service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the ListApplications service method, as returned by ServerlessApplicationRepository. /// /// One of the parameters in the request is invalid. /// /// /// The client is not authenticated. /// /// /// The AWS Serverless Application Repository service encountered an internal error. /// /// /// The resource (for example, an access policy statement) specified in the request doesn't /// exist. /// /// REST API Reference for ListApplications Operation public virtual Task ListApplicationsAsync(ListApplicationsRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = ListApplicationsRequestMarshaller.Instance; options.ResponseUnmarshaller = ListApplicationsResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region ListApplicationVersions internal virtual ListApplicationVersionsResponse ListApplicationVersions(ListApplicationVersionsRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = ListApplicationVersionsRequestMarshaller.Instance; options.ResponseUnmarshaller = ListApplicationVersionsResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Lists versions for the specified application. /// /// Container for the necessary parameters to execute the ListApplicationVersions service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the ListApplicationVersions service method, as returned by ServerlessApplicationRepository. /// /// One of the parameters in the request is invalid. /// /// /// The client is not authenticated. /// /// /// The AWS Serverless Application Repository service encountered an internal error. /// /// /// The resource (for example, an access policy statement) specified in the request doesn't /// exist. /// /// /// The client is sending more than the allowed number of requests per unit of time. /// /// REST API Reference for ListApplicationVersions Operation public virtual Task ListApplicationVersionsAsync(ListApplicationVersionsRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = ListApplicationVersionsRequestMarshaller.Instance; options.ResponseUnmarshaller = ListApplicationVersionsResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region PutApplicationPolicy internal virtual PutApplicationPolicyResponse PutApplicationPolicy(PutApplicationPolicyRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = PutApplicationPolicyRequestMarshaller.Instance; options.ResponseUnmarshaller = PutApplicationPolicyResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Sets the permission policy for an application. For the list of actions supported for /// this operation, see Application /// Permissions . /// /// Container for the necessary parameters to execute the PutApplicationPolicy service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the PutApplicationPolicy service method, as returned by ServerlessApplicationRepository. /// /// One of the parameters in the request is invalid. /// /// /// The client is not authenticated. /// /// /// The AWS Serverless Application Repository service encountered an internal error. /// /// /// The resource (for example, an access policy statement) specified in the request doesn't /// exist. /// /// /// The client is sending more than the allowed number of requests per unit of time. /// /// REST API Reference for PutApplicationPolicy Operation public virtual Task PutApplicationPolicyAsync(PutApplicationPolicyRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = PutApplicationPolicyRequestMarshaller.Instance; options.ResponseUnmarshaller = PutApplicationPolicyResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region UnshareApplication internal virtual UnshareApplicationResponse UnshareApplication(UnshareApplicationRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = UnshareApplicationRequestMarshaller.Instance; options.ResponseUnmarshaller = UnshareApplicationResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Unshares an application from an AWS Organization. /// /// /// /// This operation can be called only from the organization's master account. /// /// /// Container for the necessary parameters to execute the UnshareApplication service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the UnshareApplication service method, as returned by ServerlessApplicationRepository. /// /// One of the parameters in the request is invalid. /// /// /// The client is not authenticated. /// /// /// The AWS Serverless Application Repository service encountered an internal error. /// /// /// The resource (for example, an access policy statement) specified in the request doesn't /// exist. /// /// /// The client is sending more than the allowed number of requests per unit of time. /// /// REST API Reference for UnshareApplication Operation public virtual Task UnshareApplicationAsync(UnshareApplicationRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = UnshareApplicationRequestMarshaller.Instance; options.ResponseUnmarshaller = UnshareApplicationResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region UpdateApplication internal virtual UpdateApplicationResponse UpdateApplication(UpdateApplicationRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateApplicationRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateApplicationResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Updates the specified application. /// /// Container for the necessary parameters to execute the UpdateApplication service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the UpdateApplication service method, as returned by ServerlessApplicationRepository. /// /// One of the parameters in the request is invalid. /// /// /// The resource already exists. /// /// /// The client is not authenticated. /// /// /// The AWS Serverless Application Repository service encountered an internal error. /// /// /// The resource (for example, an access policy statement) specified in the request doesn't /// exist. /// /// /// The client is sending more than the allowed number of requests per unit of time. /// /// REST API Reference for UpdateApplication Operation public virtual Task UpdateApplicationAsync(UpdateApplicationRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateApplicationRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateApplicationResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion } }