/*
* 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 dlm-2018-01-12.normal.json service model.
*/
using System;
using System.Collections.Generic;
using Amazon.Runtime;
using Amazon.DLM.Model;
namespace Amazon.DLM
{
///
/// Interface for accessing DLM
///
/// Amazon Data Lifecycle Manager
///
/// With Amazon Data Lifecycle Manager, you can manage the lifecycle of your Amazon Web
/// Services resources. You create lifecycle policies, which are used to automate operations
/// on the specified resources.
///
///
///
/// Amazon Data Lifecycle Manager supports Amazon EBS volumes and snapshots. For information
/// about using Amazon Data Lifecycle Manager with Amazon EBS, see
/// Amazon Data Lifecycle Manager in the Amazon EC2 User Guide.
///
///
public partial interface IAmazonDLM : IAmazonService, IDisposable
{
#region CreateLifecyclePolicy
///
/// Creates a policy to manage the lifecycle of the specified Amazon Web Services resources.
/// You can create up to 100 lifecycle policies.
///
/// Container for the necessary parameters to execute the CreateLifecyclePolicy service method.
///
/// The response from the CreateLifecyclePolicy service method, as returned by DLM.
///
/// The service failed in an unexpected way.
///
///
/// Bad request. The request is missing required parameters or has invalid parameters.
///
///
/// The request failed because a limit was exceeded.
///
/// REST API Reference for CreateLifecyclePolicy Operation
CreateLifecyclePolicyResponse CreateLifecyclePolicy(CreateLifecyclePolicyRequest request);
///
/// Initiates the asynchronous execution of the CreateLifecyclePolicy operation.
///
///
/// Container for the necessary parameters to execute the CreateLifecyclePolicy operation on AmazonDLMClient.
/// An AsyncCallback delegate that is invoked when the operation completes.
/// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
/// procedure using the AsyncState property.
///
/// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndCreateLifecyclePolicy
/// operation.
/// REST API Reference for CreateLifecyclePolicy Operation
IAsyncResult BeginCreateLifecyclePolicy(CreateLifecyclePolicyRequest request, AsyncCallback callback, object state);
///
/// Finishes the asynchronous execution of the CreateLifecyclePolicy operation.
///
///
/// The IAsyncResult returned by the call to BeginCreateLifecyclePolicy.
///
/// Returns a CreateLifecyclePolicyResult from DLM.
/// REST API Reference for CreateLifecyclePolicy Operation
CreateLifecyclePolicyResponse EndCreateLifecyclePolicy(IAsyncResult asyncResult);
#endregion
#region DeleteLifecyclePolicy
///
/// Deletes the specified lifecycle policy and halts the automated operations that the
/// policy specified.
///
///
///
/// For more information about deleting a policy, see Delete
/// lifecycle policies.
///
///
/// Container for the necessary parameters to execute the DeleteLifecyclePolicy service method.
///
/// The response from the DeleteLifecyclePolicy service method, as returned by DLM.
///
/// The service failed in an unexpected way.
///
///
/// The request failed because a limit was exceeded.
///
///
/// A requested resource was not found.
///
/// REST API Reference for DeleteLifecyclePolicy Operation
DeleteLifecyclePolicyResponse DeleteLifecyclePolicy(DeleteLifecyclePolicyRequest request);
///
/// Initiates the asynchronous execution of the DeleteLifecyclePolicy operation.
///
///
/// Container for the necessary parameters to execute the DeleteLifecyclePolicy operation on AmazonDLMClient.
/// An AsyncCallback delegate that is invoked when the operation completes.
/// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
/// procedure using the AsyncState property.
///
/// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndDeleteLifecyclePolicy
/// operation.
/// REST API Reference for DeleteLifecyclePolicy Operation
IAsyncResult BeginDeleteLifecyclePolicy(DeleteLifecyclePolicyRequest request, AsyncCallback callback, object state);
///
/// Finishes the asynchronous execution of the DeleteLifecyclePolicy operation.
///
///
/// The IAsyncResult returned by the call to BeginDeleteLifecyclePolicy.
///
/// Returns a DeleteLifecyclePolicyResult from DLM.
/// REST API Reference for DeleteLifecyclePolicy Operation
DeleteLifecyclePolicyResponse EndDeleteLifecyclePolicy(IAsyncResult asyncResult);
#endregion
#region GetLifecyclePolicies
///
/// Gets summary information about all or the specified data lifecycle policies.
///
///
///
/// To get complete information about a policy, use GetLifecyclePolicy.
///
///
/// Container for the necessary parameters to execute the GetLifecyclePolicies service method.
///
/// The response from the GetLifecyclePolicies service method, as returned by DLM.
///
/// The service failed in an unexpected way.
///
///
/// Bad request. The request is missing required parameters or has invalid parameters.
///
///
/// The request failed because a limit was exceeded.
///
///
/// A requested resource was not found.
///
/// REST API Reference for GetLifecyclePolicies Operation
GetLifecyclePoliciesResponse GetLifecyclePolicies(GetLifecyclePoliciesRequest request);
///
/// Initiates the asynchronous execution of the GetLifecyclePolicies operation.
///
///
/// Container for the necessary parameters to execute the GetLifecyclePolicies operation on AmazonDLMClient.
/// An AsyncCallback delegate that is invoked when the operation completes.
/// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
/// procedure using the AsyncState property.
///
/// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndGetLifecyclePolicies
/// operation.
/// REST API Reference for GetLifecyclePolicies Operation
IAsyncResult BeginGetLifecyclePolicies(GetLifecyclePoliciesRequest request, AsyncCallback callback, object state);
///
/// Finishes the asynchronous execution of the GetLifecyclePolicies operation.
///
///
/// The IAsyncResult returned by the call to BeginGetLifecyclePolicies.
///
/// Returns a GetLifecyclePoliciesResult from DLM.
/// REST API Reference for GetLifecyclePolicies Operation
GetLifecyclePoliciesResponse EndGetLifecyclePolicies(IAsyncResult asyncResult);
#endregion
#region GetLifecyclePolicy
///
/// Gets detailed information about the specified lifecycle policy.
///
/// Container for the necessary parameters to execute the GetLifecyclePolicy service method.
///
/// The response from the GetLifecyclePolicy service method, as returned by DLM.
///
/// The service failed in an unexpected way.
///
///
/// The request failed because a limit was exceeded.
///
///
/// A requested resource was not found.
///
/// REST API Reference for GetLifecyclePolicy Operation
GetLifecyclePolicyResponse GetLifecyclePolicy(GetLifecyclePolicyRequest request);
///
/// Initiates the asynchronous execution of the GetLifecyclePolicy operation.
///
///
/// Container for the necessary parameters to execute the GetLifecyclePolicy operation on AmazonDLMClient.
/// An AsyncCallback delegate that is invoked when the operation completes.
/// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
/// procedure using the AsyncState property.
///
/// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndGetLifecyclePolicy
/// operation.
/// REST API Reference for GetLifecyclePolicy Operation
IAsyncResult BeginGetLifecyclePolicy(GetLifecyclePolicyRequest request, AsyncCallback callback, object state);
///
/// Finishes the asynchronous execution of the GetLifecyclePolicy operation.
///
///
/// The IAsyncResult returned by the call to BeginGetLifecyclePolicy.
///
/// Returns a GetLifecyclePolicyResult from DLM.
/// REST API Reference for GetLifecyclePolicy Operation
GetLifecyclePolicyResponse EndGetLifecyclePolicy(IAsyncResult asyncResult);
#endregion
#region ListTagsForResource
///
/// Lists the tags for the specified resource.
///
/// Container for the necessary parameters to execute the ListTagsForResource service method.
///
/// The response from the ListTagsForResource service method, as returned by DLM.
///
/// The service failed in an unexpected way.
///
///
/// Bad request. The request is missing required parameters or has invalid parameters.
///
///
/// A requested resource was not found.
///
/// REST API Reference for ListTagsForResource Operation
ListTagsForResourceResponse ListTagsForResource(ListTagsForResourceRequest request);
///
/// Initiates the asynchronous execution of the ListTagsForResource operation.
///
///
/// Container for the necessary parameters to execute the ListTagsForResource operation on AmazonDLMClient.
/// An AsyncCallback delegate that is invoked when the operation completes.
/// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
/// procedure using the AsyncState property.
///
/// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndListTagsForResource
/// operation.
/// REST API Reference for ListTagsForResource Operation
IAsyncResult BeginListTagsForResource(ListTagsForResourceRequest request, AsyncCallback callback, object state);
///
/// Finishes the asynchronous execution of the ListTagsForResource operation.
///
///
/// The IAsyncResult returned by the call to BeginListTagsForResource.
///
/// Returns a ListTagsForResourceResult from DLM.
/// REST API Reference for ListTagsForResource Operation
ListTagsForResourceResponse EndListTagsForResource(IAsyncResult asyncResult);
#endregion
#region TagResource
///
/// Adds the specified tags to the specified resource.
///
/// Container for the necessary parameters to execute the TagResource service method.
///
/// The response from the TagResource service method, as returned by DLM.
///
/// The service failed in an unexpected way.
///
///
/// Bad request. The request is missing required parameters or has invalid parameters.
///
///
/// A requested resource was not found.
///
/// REST API Reference for TagResource Operation
TagResourceResponse TagResource(TagResourceRequest request);
///
/// Initiates the asynchronous execution of the TagResource operation.
///
///
/// Container for the necessary parameters to execute the TagResource operation on AmazonDLMClient.
/// An AsyncCallback delegate that is invoked when the operation completes.
/// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
/// procedure using the AsyncState property.
///
/// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndTagResource
/// operation.
/// REST API Reference for TagResource Operation
IAsyncResult BeginTagResource(TagResourceRequest request, AsyncCallback callback, object state);
///
/// Finishes the asynchronous execution of the TagResource operation.
///
///
/// The IAsyncResult returned by the call to BeginTagResource.
///
/// Returns a TagResourceResult from DLM.
/// REST API Reference for TagResource Operation
TagResourceResponse EndTagResource(IAsyncResult asyncResult);
#endregion
#region UntagResource
///
/// Removes the specified tags from the specified resource.
///
/// Container for the necessary parameters to execute the UntagResource service method.
///
/// The response from the UntagResource service method, as returned by DLM.
///
/// The service failed in an unexpected way.
///
///
/// Bad request. The request is missing required parameters or has invalid parameters.
///
///
/// A requested resource was not found.
///
/// REST API Reference for UntagResource Operation
UntagResourceResponse UntagResource(UntagResourceRequest request);
///
/// Initiates the asynchronous execution of the UntagResource operation.
///
///
/// Container for the necessary parameters to execute the UntagResource operation on AmazonDLMClient.
/// An AsyncCallback delegate that is invoked when the operation completes.
/// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
/// procedure using the AsyncState property.
///
/// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndUntagResource
/// operation.
/// REST API Reference for UntagResource Operation
IAsyncResult BeginUntagResource(UntagResourceRequest request, AsyncCallback callback, object state);
///
/// Finishes the asynchronous execution of the UntagResource operation.
///
///
/// The IAsyncResult returned by the call to BeginUntagResource.
///
/// Returns a UntagResourceResult from DLM.
/// REST API Reference for UntagResource Operation
UntagResourceResponse EndUntagResource(IAsyncResult asyncResult);
#endregion
#region UpdateLifecyclePolicy
///
/// Updates the specified lifecycle policy.
///
///
///
/// For more information about updating a policy, see Modify
/// lifecycle policies.
///
///
/// Container for the necessary parameters to execute the UpdateLifecyclePolicy service method.
///
/// The response from the UpdateLifecyclePolicy service method, as returned by DLM.
///
/// The service failed in an unexpected way.
///
///
/// Bad request. The request is missing required parameters or has invalid parameters.
///
///
/// The request failed because a limit was exceeded.
///
///
/// A requested resource was not found.
///
/// REST API Reference for UpdateLifecyclePolicy Operation
UpdateLifecyclePolicyResponse UpdateLifecyclePolicy(UpdateLifecyclePolicyRequest request);
///
/// Initiates the asynchronous execution of the UpdateLifecyclePolicy operation.
///
///
/// Container for the necessary parameters to execute the UpdateLifecyclePolicy operation on AmazonDLMClient.
/// An AsyncCallback delegate that is invoked when the operation completes.
/// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
/// procedure using the AsyncState property.
///
/// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndUpdateLifecyclePolicy
/// operation.
/// REST API Reference for UpdateLifecyclePolicy Operation
IAsyncResult BeginUpdateLifecyclePolicy(UpdateLifecyclePolicyRequest request, AsyncCallback callback, object state);
///
/// Finishes the asynchronous execution of the UpdateLifecyclePolicy operation.
///
///
/// The IAsyncResult returned by the call to BeginUpdateLifecyclePolicy.
///
/// Returns a UpdateLifecyclePolicyResult from DLM.
/// REST API Reference for UpdateLifecyclePolicy Operation
UpdateLifecyclePolicyResponse EndUpdateLifecyclePolicy(IAsyncResult asyncResult);
#endregion
}
}