/* * Copyright 2018-2023 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. */ package com.amazonaws.services.applicationcostprofiler; import javax.annotation.Generated; import com.amazonaws.services.applicationcostprofiler.model.*; /** * Interface for accessing AWS Application Cost Profiler asynchronously. Each asynchronous method will return a Java * Future object representing the asynchronous operation; overloads which accept an {@code AsyncHandler} can be used to * receive notification when an asynchronous operation completes. *

* Note: Do not directly implement this interface, new methods are added to it regularly. Extend from * {@link com.amazonaws.services.applicationcostprofiler.AbstractAWSApplicationCostProfilerAsync} instead. *

*

*

* This reference provides descriptions of the AWS Application Cost Profiler API. *

*

* The AWS Application Cost Profiler API provides programmatic access to view, create, update, and delete application * cost report definitions, as well as to import your usage data into the Application Cost Profiler service. *

*

* For more information about using this service, see the AWS Application Cost * Profiler User Guide. *

*/ @Generated("com.amazonaws:aws-java-sdk-code-generator") public interface AWSApplicationCostProfilerAsync extends AWSApplicationCostProfiler { /** *

* Deletes the specified report definition in AWS Application Cost Profiler. This stops the report from being * generated. *

* * @param deleteReportDefinitionRequest * @return A Java Future containing the result of the DeleteReportDefinition operation returned by the service. * @sample AWSApplicationCostProfilerAsync.DeleteReportDefinition * @see AWS API Documentation */ java.util.concurrent.Future deleteReportDefinitionAsync(DeleteReportDefinitionRequest deleteReportDefinitionRequest); /** *

* Deletes the specified report definition in AWS Application Cost Profiler. This stops the report from being * generated. *

* * @param deleteReportDefinitionRequest * @param asyncHandler * Asynchronous callback handler for events in the lifecycle of the request. Users can provide an * implementation of the callback methods in this interface to receive notification of successful or * unsuccessful completion of the operation. * @return A Java Future containing the result of the DeleteReportDefinition operation returned by the service. * @sample AWSApplicationCostProfilerAsyncHandler.DeleteReportDefinition * @see AWS API Documentation */ java.util.concurrent.Future deleteReportDefinitionAsync(DeleteReportDefinitionRequest deleteReportDefinitionRequest, com.amazonaws.handlers.AsyncHandler asyncHandler); /** *

* Retrieves the definition of a report already configured in AWS Application Cost Profiler. *

* * @param getReportDefinitionRequest * @return A Java Future containing the result of the GetReportDefinition operation returned by the service. * @sample AWSApplicationCostProfilerAsync.GetReportDefinition * @see AWS API Documentation */ java.util.concurrent.Future getReportDefinitionAsync(GetReportDefinitionRequest getReportDefinitionRequest); /** *

* Retrieves the definition of a report already configured in AWS Application Cost Profiler. *

* * @param getReportDefinitionRequest * @param asyncHandler * Asynchronous callback handler for events in the lifecycle of the request. Users can provide an * implementation of the callback methods in this interface to receive notification of successful or * unsuccessful completion of the operation. * @return A Java Future containing the result of the GetReportDefinition operation returned by the service. * @sample AWSApplicationCostProfilerAsyncHandler.GetReportDefinition * @see AWS API Documentation */ java.util.concurrent.Future getReportDefinitionAsync(GetReportDefinitionRequest getReportDefinitionRequest, com.amazonaws.handlers.AsyncHandler asyncHandler); /** *

* Ingests application usage data from Amazon Simple Storage Service (Amazon S3). *

*

* The data must already exist in the S3 location. As part of the action, AWS Application Cost Profiler copies the * object from your S3 bucket to an S3 bucket owned by Amazon for processing asynchronously. *

* * @param importApplicationUsageRequest * @return A Java Future containing the result of the ImportApplicationUsage operation returned by the service. * @sample AWSApplicationCostProfilerAsync.ImportApplicationUsage * @see AWS API Documentation */ java.util.concurrent.Future importApplicationUsageAsync(ImportApplicationUsageRequest importApplicationUsageRequest); /** *

* Ingests application usage data from Amazon Simple Storage Service (Amazon S3). *

*

* The data must already exist in the S3 location. As part of the action, AWS Application Cost Profiler copies the * object from your S3 bucket to an S3 bucket owned by Amazon for processing asynchronously. *

* * @param importApplicationUsageRequest * @param asyncHandler * Asynchronous callback handler for events in the lifecycle of the request. Users can provide an * implementation of the callback methods in this interface to receive notification of successful or * unsuccessful completion of the operation. * @return A Java Future containing the result of the ImportApplicationUsage operation returned by the service. * @sample AWSApplicationCostProfilerAsyncHandler.ImportApplicationUsage * @see AWS API Documentation */ java.util.concurrent.Future importApplicationUsageAsync(ImportApplicationUsageRequest importApplicationUsageRequest, com.amazonaws.handlers.AsyncHandler asyncHandler); /** *

* Retrieves a list of all reports and their configurations for your AWS account. *

*

* The maximum number of reports is one. *

* * @param listReportDefinitionsRequest * @return A Java Future containing the result of the ListReportDefinitions operation returned by the service. * @sample AWSApplicationCostProfilerAsync.ListReportDefinitions * @see AWS API Documentation */ java.util.concurrent.Future listReportDefinitionsAsync(ListReportDefinitionsRequest listReportDefinitionsRequest); /** *

* Retrieves a list of all reports and their configurations for your AWS account. *

*

* The maximum number of reports is one. *

* * @param listReportDefinitionsRequest * @param asyncHandler * Asynchronous callback handler for events in the lifecycle of the request. Users can provide an * implementation of the callback methods in this interface to receive notification of successful or * unsuccessful completion of the operation. * @return A Java Future containing the result of the ListReportDefinitions operation returned by the service. * @sample AWSApplicationCostProfilerAsyncHandler.ListReportDefinitions * @see AWS API Documentation */ java.util.concurrent.Future listReportDefinitionsAsync(ListReportDefinitionsRequest listReportDefinitionsRequest, com.amazonaws.handlers.AsyncHandler asyncHandler); /** *

* Creates the report definition for a report in Application Cost Profiler. *

* * @param putReportDefinitionRequest * @return A Java Future containing the result of the PutReportDefinition operation returned by the service. * @sample AWSApplicationCostProfilerAsync.PutReportDefinition * @see AWS API Documentation */ java.util.concurrent.Future putReportDefinitionAsync(PutReportDefinitionRequest putReportDefinitionRequest); /** *

* Creates the report definition for a report in Application Cost Profiler. *

* * @param putReportDefinitionRequest * @param asyncHandler * Asynchronous callback handler for events in the lifecycle of the request. Users can provide an * implementation of the callback methods in this interface to receive notification of successful or * unsuccessful completion of the operation. * @return A Java Future containing the result of the PutReportDefinition operation returned by the service. * @sample AWSApplicationCostProfilerAsyncHandler.PutReportDefinition * @see AWS API Documentation */ java.util.concurrent.Future putReportDefinitionAsync(PutReportDefinitionRequest putReportDefinitionRequest, com.amazonaws.handlers.AsyncHandler asyncHandler); /** *

* Updates existing report in AWS Application Cost Profiler. *

* * @param updateReportDefinitionRequest * @return A Java Future containing the result of the UpdateReportDefinition operation returned by the service. * @sample AWSApplicationCostProfilerAsync.UpdateReportDefinition * @see AWS API Documentation */ java.util.concurrent.Future updateReportDefinitionAsync(UpdateReportDefinitionRequest updateReportDefinitionRequest); /** *

* Updates existing report in AWS Application Cost Profiler. *

* * @param updateReportDefinitionRequest * @param asyncHandler * Asynchronous callback handler for events in the lifecycle of the request. Users can provide an * implementation of the callback methods in this interface to receive notification of successful or * unsuccessful completion of the operation. * @return A Java Future containing the result of the UpdateReportDefinition operation returned by the service. * @sample AWSApplicationCostProfilerAsyncHandler.UpdateReportDefinition * @see AWS API Documentation */ java.util.concurrent.Future updateReportDefinitionAsync(UpdateReportDefinitionRequest updateReportDefinitionRequest, com.amazonaws.handlers.AsyncHandler asyncHandler); }