/*
* 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 mobile-2017-07-01.normal.json service model.
*/
using System;
using System.Threading;
using System.Threading.Tasks;
using System.Collections.Generic;
using Amazon.Runtime;
using Amazon.Mobile.Model;
namespace Amazon.Mobile
{
///
/// Interface for accessing Mobile
///
/// AWS Mobile Service provides mobile app and website developers with capabilities required
/// to configure AWS resources and bootstrap their developer desktop projects with the
/// necessary SDKs, constants, tools and samples to make use of those resources.
///
public partial interface IAmazonMobile : IAmazonService, IDisposable
{
#region CreateProject
///
/// Creates an AWS Mobile Hub project.
///
/// Container for the necessary parameters to execute the CreateProject service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the CreateProject service method, as returned by Mobile.
///
/// The request cannot be processed because some parameter is not valid or the project
/// state prevents the operation from being performed.
///
///
/// The service has encountered an unexpected error condition which prevents it from
/// servicing the request.
///
///
/// There are too many AWS Mobile Hub projects in the account or the account has exceeded
/// the maximum number of resources in some AWS service. You should create another sub-account
/// using AWS Organizations or remove some resources and retry your request.
///
///
/// No entity can be found with the specified identifier.
///
///
/// The service is temporarily unavailable. The request should be retried after some
/// time delay.
///
///
/// Too many requests have been received for this AWS account in too short a time. The
/// request should be retried after some time delay.
///
///
/// Credentials of the caller are insufficient to authorize the request.
///
/// REST API Reference for CreateProject Operation
Task CreateProjectAsync(CreateProjectRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region DeleteProject
///
/// Delets a project in AWS Mobile Hub.
///
/// Container for the necessary parameters to execute the DeleteProject service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DeleteProject service method, as returned by Mobile.
///
/// The service has encountered an unexpected error condition which prevents it from
/// servicing the request.
///
///
/// No entity can be found with the specified identifier.
///
///
/// The service is temporarily unavailable. The request should be retried after some
/// time delay.
///
///
/// Too many requests have been received for this AWS account in too short a time. The
/// request should be retried after some time delay.
///
///
/// Credentials of the caller are insufficient to authorize the request.
///
/// REST API Reference for DeleteProject Operation
Task DeleteProjectAsync(DeleteProjectRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region DescribeBundle
///
/// Get the bundle details for the requested bundle id.
///
/// Container for the necessary parameters to execute the DescribeBundle service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeBundle service method, as returned by Mobile.
///
/// The request cannot be processed because some parameter is not valid or the project
/// state prevents the operation from being performed.
///
///
/// The service has encountered an unexpected error condition which prevents it from
/// servicing the request.
///
///
/// No entity can be found with the specified identifier.
///
///
/// The service is temporarily unavailable. The request should be retried after some
/// time delay.
///
///
/// Too many requests have been received for this AWS account in too short a time. The
/// request should be retried after some time delay.
///
///
/// Credentials of the caller are insufficient to authorize the request.
///
/// REST API Reference for DescribeBundle Operation
Task DescribeBundleAsync(DescribeBundleRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region DescribeProject
///
/// Gets details about a project in AWS Mobile Hub.
///
/// Container for the necessary parameters to execute the DescribeProject service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeProject service method, as returned by Mobile.
///
/// The request cannot be processed because some parameter is not valid or the project
/// state prevents the operation from being performed.
///
///
/// The service has encountered an unexpected error condition which prevents it from
/// servicing the request.
///
///
/// No entity can be found with the specified identifier.
///
///
/// The service is temporarily unavailable. The request should be retried after some
/// time delay.
///
///
/// Too many requests have been received for this AWS account in too short a time. The
/// request should be retried after some time delay.
///
///
/// Credentials of the caller are insufficient to authorize the request.
///
/// REST API Reference for DescribeProject Operation
Task DescribeProjectAsync(DescribeProjectRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region ExportBundle
///
/// Generates customized software development kit (SDK) and or tool packages used to
/// integrate mobile web or mobile app clients with backend AWS resources.
///
/// Container for the necessary parameters to execute the ExportBundle service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the ExportBundle service method, as returned by Mobile.
///
/// The request cannot be processed because some parameter is not valid or the project
/// state prevents the operation from being performed.
///
///
/// The service has encountered an unexpected error condition which prevents it from
/// servicing the request.
///
///
/// No entity can be found with the specified identifier.
///
///
/// The service is temporarily unavailable. The request should be retried after some
/// time delay.
///
///
/// Too many requests have been received for this AWS account in too short a time. The
/// request should be retried after some time delay.
///
///
/// Credentials of the caller are insufficient to authorize the request.
///
/// REST API Reference for ExportBundle Operation
Task ExportBundleAsync(ExportBundleRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region ExportProject
///
/// Exports project configuration to a snapshot which can be downloaded and shared. Note
/// that mobile app push credentials are encrypted in exported projects, so they can only
/// be shared successfully within the same AWS account.
///
/// Container for the necessary parameters to execute the ExportProject service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the ExportProject service method, as returned by Mobile.
///
/// The request cannot be processed because some parameter is not valid or the project
/// state prevents the operation from being performed.
///
///
/// The service has encountered an unexpected error condition which prevents it from
/// servicing the request.
///
///
/// No entity can be found with the specified identifier.
///
///
/// The service is temporarily unavailable. The request should be retried after some
/// time delay.
///
///
/// Too many requests have been received for this AWS account in too short a time. The
/// request should be retried after some time delay.
///
///
/// Credentials of the caller are insufficient to authorize the request.
///
/// REST API Reference for ExportProject Operation
Task ExportProjectAsync(ExportProjectRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region ListBundles
///
/// List all available bundles.
///
/// Container for the necessary parameters to execute the ListBundles service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the ListBundles service method, as returned by Mobile.
///
/// The request cannot be processed because some parameter is not valid or the project
/// state prevents the operation from being performed.
///
///
/// The service has encountered an unexpected error condition which prevents it from
/// servicing the request.
///
///
/// The service is temporarily unavailable. The request should be retried after some
/// time delay.
///
///
/// Too many requests have been received for this AWS account in too short a time. The
/// request should be retried after some time delay.
///
///
/// Credentials of the caller are insufficient to authorize the request.
///
/// REST API Reference for ListBundles Operation
Task ListBundlesAsync(ListBundlesRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region ListProjects
///
/// Lists projects in AWS Mobile Hub.
///
/// Container for the necessary parameters to execute the ListProjects service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the ListProjects service method, as returned by Mobile.
///
/// The request cannot be processed because some parameter is not valid or the project
/// state prevents the operation from being performed.
///
///
/// The service has encountered an unexpected error condition which prevents it from
/// servicing the request.
///
///
/// The service is temporarily unavailable. The request should be retried after some
/// time delay.
///
///
/// Too many requests have been received for this AWS account in too short a time. The
/// request should be retried after some time delay.
///
///
/// Credentials of the caller are insufficient to authorize the request.
///
/// REST API Reference for ListProjects Operation
Task ListProjectsAsync(ListProjectsRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region UpdateProject
///
/// Update an existing project.
///
/// Container for the necessary parameters to execute the UpdateProject service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the UpdateProject service method, as returned by Mobile.
///
/// Account Action is required in order to continue the request.
///
///
/// The request cannot be processed because some parameter is not valid or the project
/// state prevents the operation from being performed.
///
///
/// The service has encountered an unexpected error condition which prevents it from
/// servicing the request.
///
///
/// There are too many AWS Mobile Hub projects in the account or the account has exceeded
/// the maximum number of resources in some AWS service. You should create another sub-account
/// using AWS Organizations or remove some resources and retry your request.
///
///
/// No entity can be found with the specified identifier.
///
///
/// The service is temporarily unavailable. The request should be retried after some
/// time delay.
///
///
/// Too many requests have been received for this AWS account in too short a time. The
/// request should be retried after some time delay.
///
///
/// Credentials of the caller are insufficient to authorize the request.
///
/// REST API Reference for UpdateProject Operation
Task UpdateProjectAsync(UpdateProjectRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
}
}