/*
* 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 license-manager-user-subscriptions-2018-05-10.normal.json service model.
*/
using System;
using System.Collections.Generic;
using Amazon.Runtime;
using Amazon.LicenseManagerUserSubscriptions.Model;
namespace Amazon.LicenseManagerUserSubscriptions
{
///
/// Interface for accessing LicenseManagerUserSubscriptions
///
/// With License Manager, you can create user-based subscriptions to utilize licensed
/// software with a per user subscription fee on Amazon EC2 instances.
///
public partial interface IAmazonLicenseManagerUserSubscriptions : IAmazonService, IDisposable
{
#if BCL45 || AWS_ASYNC_ENUMERABLES_API
///
/// Paginators for the service
///
ILicenseManagerUserSubscriptionsPaginatorFactory Paginators { get; }
#endif
#region AssociateUser
///
/// Associates the user to an EC2 instance to utilize user-based subscriptions.
///
///
///
/// Your estimated bill for charges on the number of users and related costs will take
/// 48 hours to appear for billing periods that haven't closed (marked as Pending
/// billing status) in Amazon Web Services Billing. For more information, see Viewing
/// your monthly charges in the Amazon Web Services Billing User Guide.
///
///
///
/// Container for the necessary parameters to execute the AssociateUser service method.
///
/// The response from the AssociateUser service method, as returned by LicenseManagerUserSubscriptions.
///
/// You don't have sufficient access to perform this action.
///
///
/// The request couldn't be completed because it conflicted with the current state of
/// the resource.
///
///
/// An exception occurred with the service.
///
///
/// The resource couldn't be found.
///
///
/// The request failed because a service quota is exceeded.
///
///
/// The request was denied because of request throttling. Retry the request.
///
///
/// A parameter is not valid.
///
/// REST API Reference for AssociateUser Operation
AssociateUserResponse AssociateUser(AssociateUserRequest request);
///
/// Initiates the asynchronous execution of the AssociateUser operation.
///
///
/// Container for the necessary parameters to execute the AssociateUser operation on AmazonLicenseManagerUserSubscriptionsClient.
/// 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 EndAssociateUser
/// operation.
/// REST API Reference for AssociateUser Operation
IAsyncResult BeginAssociateUser(AssociateUserRequest request, AsyncCallback callback, object state);
///
/// Finishes the asynchronous execution of the AssociateUser operation.
///
///
/// The IAsyncResult returned by the call to BeginAssociateUser.
///
/// Returns a AssociateUserResult from LicenseManagerUserSubscriptions.
/// REST API Reference for AssociateUser Operation
AssociateUserResponse EndAssociateUser(IAsyncResult asyncResult);
#endregion
#region DeregisterIdentityProvider
///
/// Deregisters the identity provider from providing user-based subscriptions.
///
/// Container for the necessary parameters to execute the DeregisterIdentityProvider service method.
///
/// The response from the DeregisterIdentityProvider service method, as returned by LicenseManagerUserSubscriptions.
///
/// You don't have sufficient access to perform this action.
///
///
/// The request couldn't be completed because it conflicted with the current state of
/// the resource.
///
///
/// An exception occurred with the service.
///
///
/// The resource couldn't be found.
///
///
/// The request failed because a service quota is exceeded.
///
///
/// The request was denied because of request throttling. Retry the request.
///
///
/// A parameter is not valid.
///
/// REST API Reference for DeregisterIdentityProvider Operation
DeregisterIdentityProviderResponse DeregisterIdentityProvider(DeregisterIdentityProviderRequest request);
///
/// Initiates the asynchronous execution of the DeregisterIdentityProvider operation.
///
///
/// Container for the necessary parameters to execute the DeregisterIdentityProvider operation on AmazonLicenseManagerUserSubscriptionsClient.
/// 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 EndDeregisterIdentityProvider
/// operation.
/// REST API Reference for DeregisterIdentityProvider Operation
IAsyncResult BeginDeregisterIdentityProvider(DeregisterIdentityProviderRequest request, AsyncCallback callback, object state);
///
/// Finishes the asynchronous execution of the DeregisterIdentityProvider operation.
///
///
/// The IAsyncResult returned by the call to BeginDeregisterIdentityProvider.
///
/// Returns a DeregisterIdentityProviderResult from LicenseManagerUserSubscriptions.
/// REST API Reference for DeregisterIdentityProvider Operation
DeregisterIdentityProviderResponse EndDeregisterIdentityProvider(IAsyncResult asyncResult);
#endregion
#region DisassociateUser
///
/// Disassociates the user from an EC2 instance providing user-based subscriptions.
///
/// Container for the necessary parameters to execute the DisassociateUser service method.
///
/// The response from the DisassociateUser service method, as returned by LicenseManagerUserSubscriptions.
///
/// You don't have sufficient access to perform this action.
///
///
/// The request couldn't be completed because it conflicted with the current state of
/// the resource.
///
///
/// An exception occurred with the service.
///
///
/// The resource couldn't be found.
///
///
/// The request failed because a service quota is exceeded.
///
///
/// The request was denied because of request throttling. Retry the request.
///
///
/// A parameter is not valid.
///
/// REST API Reference for DisassociateUser Operation
DisassociateUserResponse DisassociateUser(DisassociateUserRequest request);
///
/// Initiates the asynchronous execution of the DisassociateUser operation.
///
///
/// Container for the necessary parameters to execute the DisassociateUser operation on AmazonLicenseManagerUserSubscriptionsClient.
/// 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 EndDisassociateUser
/// operation.
/// REST API Reference for DisassociateUser Operation
IAsyncResult BeginDisassociateUser(DisassociateUserRequest request, AsyncCallback callback, object state);
///
/// Finishes the asynchronous execution of the DisassociateUser operation.
///
///
/// The IAsyncResult returned by the call to BeginDisassociateUser.
///
/// Returns a DisassociateUserResult from LicenseManagerUserSubscriptions.
/// REST API Reference for DisassociateUser Operation
DisassociateUserResponse EndDisassociateUser(IAsyncResult asyncResult);
#endregion
#region ListIdentityProviders
///
/// Lists the identity providers for user-based subscriptions.
///
/// Container for the necessary parameters to execute the ListIdentityProviders service method.
///
/// The response from the ListIdentityProviders service method, as returned by LicenseManagerUserSubscriptions.
///
/// You don't have sufficient access to perform this action.
///
///
/// The request couldn't be completed because it conflicted with the current state of
/// the resource.
///
///
/// An exception occurred with the service.
///
///
/// The resource couldn't be found.
///
///
/// The request failed because a service quota is exceeded.
///
///
/// The request was denied because of request throttling. Retry the request.
///
///
/// A parameter is not valid.
///
/// REST API Reference for ListIdentityProviders Operation
ListIdentityProvidersResponse ListIdentityProviders(ListIdentityProvidersRequest request);
///
/// Initiates the asynchronous execution of the ListIdentityProviders operation.
///
///
/// Container for the necessary parameters to execute the ListIdentityProviders operation on AmazonLicenseManagerUserSubscriptionsClient.
/// 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 EndListIdentityProviders
/// operation.
/// REST API Reference for ListIdentityProviders Operation
IAsyncResult BeginListIdentityProviders(ListIdentityProvidersRequest request, AsyncCallback callback, object state);
///
/// Finishes the asynchronous execution of the ListIdentityProviders operation.
///
///
/// The IAsyncResult returned by the call to BeginListIdentityProviders.
///
/// Returns a ListIdentityProvidersResult from LicenseManagerUserSubscriptions.
/// REST API Reference for ListIdentityProviders Operation
ListIdentityProvidersResponse EndListIdentityProviders(IAsyncResult asyncResult);
#endregion
#region ListInstances
///
/// Lists the EC2 instances providing user-based subscriptions.
///
/// Container for the necessary parameters to execute the ListInstances service method.
///
/// The response from the ListInstances service method, as returned by LicenseManagerUserSubscriptions.
///
/// You don't have sufficient access to perform this action.
///
///
/// The request couldn't be completed because it conflicted with the current state of
/// the resource.
///
///
/// An exception occurred with the service.
///
///
/// The resource couldn't be found.
///
///
/// The request failed because a service quota is exceeded.
///
///
/// The request was denied because of request throttling. Retry the request.
///
///
/// A parameter is not valid.
///
/// REST API Reference for ListInstances Operation
ListInstancesResponse ListInstances(ListInstancesRequest request);
///
/// Initiates the asynchronous execution of the ListInstances operation.
///
///
/// Container for the necessary parameters to execute the ListInstances operation on AmazonLicenseManagerUserSubscriptionsClient.
/// 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 EndListInstances
/// operation.
/// REST API Reference for ListInstances Operation
IAsyncResult BeginListInstances(ListInstancesRequest request, AsyncCallback callback, object state);
///
/// Finishes the asynchronous execution of the ListInstances operation.
///
///
/// The IAsyncResult returned by the call to BeginListInstances.
///
/// Returns a ListInstancesResult from LicenseManagerUserSubscriptions.
/// REST API Reference for ListInstances Operation
ListInstancesResponse EndListInstances(IAsyncResult asyncResult);
#endregion
#region ListProductSubscriptions
///
/// Lists the user-based subscription products available from an identity provider.
///
/// Container for the necessary parameters to execute the ListProductSubscriptions service method.
///
/// The response from the ListProductSubscriptions service method, as returned by LicenseManagerUserSubscriptions.
///
/// You don't have sufficient access to perform this action.
///
///
/// The request couldn't be completed because it conflicted with the current state of
/// the resource.
///
///
/// An exception occurred with the service.
///
///
/// The resource couldn't be found.
///
///
/// The request failed because a service quota is exceeded.
///
///
/// The request was denied because of request throttling. Retry the request.
///
///
/// A parameter is not valid.
///
/// REST API Reference for ListProductSubscriptions Operation
ListProductSubscriptionsResponse ListProductSubscriptions(ListProductSubscriptionsRequest request);
///
/// Initiates the asynchronous execution of the ListProductSubscriptions operation.
///
///
/// Container for the necessary parameters to execute the ListProductSubscriptions operation on AmazonLicenseManagerUserSubscriptionsClient.
/// 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 EndListProductSubscriptions
/// operation.
/// REST API Reference for ListProductSubscriptions Operation
IAsyncResult BeginListProductSubscriptions(ListProductSubscriptionsRequest request, AsyncCallback callback, object state);
///
/// Finishes the asynchronous execution of the ListProductSubscriptions operation.
///
///
/// The IAsyncResult returned by the call to BeginListProductSubscriptions.
///
/// Returns a ListProductSubscriptionsResult from LicenseManagerUserSubscriptions.
/// REST API Reference for ListProductSubscriptions Operation
ListProductSubscriptionsResponse EndListProductSubscriptions(IAsyncResult asyncResult);
#endregion
#region ListUserAssociations
///
/// Lists user associations for an identity provider.
///
/// Container for the necessary parameters to execute the ListUserAssociations service method.
///
/// The response from the ListUserAssociations service method, as returned by LicenseManagerUserSubscriptions.
///
/// You don't have sufficient access to perform this action.
///
///
/// The request couldn't be completed because it conflicted with the current state of
/// the resource.
///
///
/// An exception occurred with the service.
///
///
/// The resource couldn't be found.
///
///
/// The request failed because a service quota is exceeded.
///
///
/// The request was denied because of request throttling. Retry the request.
///
///
/// A parameter is not valid.
///
/// REST API Reference for ListUserAssociations Operation
ListUserAssociationsResponse ListUserAssociations(ListUserAssociationsRequest request);
///
/// Initiates the asynchronous execution of the ListUserAssociations operation.
///
///
/// Container for the necessary parameters to execute the ListUserAssociations operation on AmazonLicenseManagerUserSubscriptionsClient.
/// 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 EndListUserAssociations
/// operation.
/// REST API Reference for ListUserAssociations Operation
IAsyncResult BeginListUserAssociations(ListUserAssociationsRequest request, AsyncCallback callback, object state);
///
/// Finishes the asynchronous execution of the ListUserAssociations operation.
///
///
/// The IAsyncResult returned by the call to BeginListUserAssociations.
///
/// Returns a ListUserAssociationsResult from LicenseManagerUserSubscriptions.
/// REST API Reference for ListUserAssociations Operation
ListUserAssociationsResponse EndListUserAssociations(IAsyncResult asyncResult);
#endregion
#region RegisterIdentityProvider
///
/// Registers an identity provider for user-based subscriptions.
///
/// Container for the necessary parameters to execute the RegisterIdentityProvider service method.
///
/// The response from the RegisterIdentityProvider service method, as returned by LicenseManagerUserSubscriptions.
///
/// You don't have sufficient access to perform this action.
///
///
/// The request couldn't be completed because it conflicted with the current state of
/// the resource.
///
///
/// An exception occurred with the service.
///
///
/// The resource couldn't be found.
///
///
/// The request failed because a service quota is exceeded.
///
///
/// The request was denied because of request throttling. Retry the request.
///
///
/// A parameter is not valid.
///
/// REST API Reference for RegisterIdentityProvider Operation
RegisterIdentityProviderResponse RegisterIdentityProvider(RegisterIdentityProviderRequest request);
///
/// Initiates the asynchronous execution of the RegisterIdentityProvider operation.
///
///
/// Container for the necessary parameters to execute the RegisterIdentityProvider operation on AmazonLicenseManagerUserSubscriptionsClient.
/// 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 EndRegisterIdentityProvider
/// operation.
/// REST API Reference for RegisterIdentityProvider Operation
IAsyncResult BeginRegisterIdentityProvider(RegisterIdentityProviderRequest request, AsyncCallback callback, object state);
///
/// Finishes the asynchronous execution of the RegisterIdentityProvider operation.
///
///
/// The IAsyncResult returned by the call to BeginRegisterIdentityProvider.
///
/// Returns a RegisterIdentityProviderResult from LicenseManagerUserSubscriptions.
/// REST API Reference for RegisterIdentityProvider Operation
RegisterIdentityProviderResponse EndRegisterIdentityProvider(IAsyncResult asyncResult);
#endregion
#region StartProductSubscription
///
/// Starts a product subscription for a user with the specified identity provider.
///
///
///
/// Your estimated bill for charges on the number of users and related costs will take
/// 48 hours to appear for billing periods that haven't closed (marked as Pending
/// billing status) in Amazon Web Services Billing. For more information, see Viewing
/// your monthly charges in the Amazon Web Services Billing User Guide.
///
///
///
/// Container for the necessary parameters to execute the StartProductSubscription service method.
///
/// The response from the StartProductSubscription service method, as returned by LicenseManagerUserSubscriptions.
///
/// You don't have sufficient access to perform this action.
///
///
/// The request couldn't be completed because it conflicted with the current state of
/// the resource.
///
///
/// An exception occurred with the service.
///
///
/// The resource couldn't be found.
///
///
/// The request failed because a service quota is exceeded.
///
///
/// The request was denied because of request throttling. Retry the request.
///
///
/// A parameter is not valid.
///
/// REST API Reference for StartProductSubscription Operation
StartProductSubscriptionResponse StartProductSubscription(StartProductSubscriptionRequest request);
///
/// Initiates the asynchronous execution of the StartProductSubscription operation.
///
///
/// Container for the necessary parameters to execute the StartProductSubscription operation on AmazonLicenseManagerUserSubscriptionsClient.
/// 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 EndStartProductSubscription
/// operation.
/// REST API Reference for StartProductSubscription Operation
IAsyncResult BeginStartProductSubscription(StartProductSubscriptionRequest request, AsyncCallback callback, object state);
///
/// Finishes the asynchronous execution of the StartProductSubscription operation.
///
///
/// The IAsyncResult returned by the call to BeginStartProductSubscription.
///
/// Returns a StartProductSubscriptionResult from LicenseManagerUserSubscriptions.
/// REST API Reference for StartProductSubscription Operation
StartProductSubscriptionResponse EndStartProductSubscription(IAsyncResult asyncResult);
#endregion
#region StopProductSubscription
///
/// Stops a product subscription for a user with the specified identity provider.
///
/// Container for the necessary parameters to execute the StopProductSubscription service method.
///
/// The response from the StopProductSubscription service method, as returned by LicenseManagerUserSubscriptions.
///
/// You don't have sufficient access to perform this action.
///
///
/// The request couldn't be completed because it conflicted with the current state of
/// the resource.
///
///
/// An exception occurred with the service.
///
///
/// The resource couldn't be found.
///
///
/// The request failed because a service quota is exceeded.
///
///
/// The request was denied because of request throttling. Retry the request.
///
///
/// A parameter is not valid.
///
/// REST API Reference for StopProductSubscription Operation
StopProductSubscriptionResponse StopProductSubscription(StopProductSubscriptionRequest request);
///
/// Initiates the asynchronous execution of the StopProductSubscription operation.
///
///
/// Container for the necessary parameters to execute the StopProductSubscription operation on AmazonLicenseManagerUserSubscriptionsClient.
/// 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 EndStopProductSubscription
/// operation.
/// REST API Reference for StopProductSubscription Operation
IAsyncResult BeginStopProductSubscription(StopProductSubscriptionRequest request, AsyncCallback callback, object state);
///
/// Finishes the asynchronous execution of the StopProductSubscription operation.
///
///
/// The IAsyncResult returned by the call to BeginStopProductSubscription.
///
/// Returns a StopProductSubscriptionResult from LicenseManagerUserSubscriptions.
/// REST API Reference for StopProductSubscription Operation
StopProductSubscriptionResponse EndStopProductSubscription(IAsyncResult asyncResult);
#endregion
#region UpdateIdentityProviderSettings
///
/// Updates additional product configuration settings for the registered identity provider.
///
/// Container for the necessary parameters to execute the UpdateIdentityProviderSettings service method.
///
/// The response from the UpdateIdentityProviderSettings service method, as returned by LicenseManagerUserSubscriptions.
///
/// You don't have sufficient access to perform this action.
///
///
/// An exception occurred with the service.
///
///
/// The request was denied because of request throttling. Retry the request.
///
///
/// A parameter is not valid.
///
/// REST API Reference for UpdateIdentityProviderSettings Operation
UpdateIdentityProviderSettingsResponse UpdateIdentityProviderSettings(UpdateIdentityProviderSettingsRequest request);
///
/// Initiates the asynchronous execution of the UpdateIdentityProviderSettings operation.
///
///
/// Container for the necessary parameters to execute the UpdateIdentityProviderSettings operation on AmazonLicenseManagerUserSubscriptionsClient.
/// 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 EndUpdateIdentityProviderSettings
/// operation.
/// REST API Reference for UpdateIdentityProviderSettings Operation
IAsyncResult BeginUpdateIdentityProviderSettings(UpdateIdentityProviderSettingsRequest request, AsyncCallback callback, object state);
///
/// Finishes the asynchronous execution of the UpdateIdentityProviderSettings operation.
///
///
/// The IAsyncResult returned by the call to BeginUpdateIdentityProviderSettings.
///
/// Returns a UpdateIdentityProviderSettingsResult from LicenseManagerUserSubscriptions.
/// REST API Reference for UpdateIdentityProviderSettings Operation
UpdateIdentityProviderSettingsResponse EndUpdateIdentityProviderSettings(IAsyncResult asyncResult);
#endregion
}
}