com.amazonaws.services.fis.AWSFIS Maven / Gradle / Ivy
Show all versions of aws-java-sdk-fis Show documentation
/*
* Copyright 2016-2021 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.fis;
import javax.annotation.Generated;
import com.amazonaws.*;
import com.amazonaws.regions.*;
import com.amazonaws.services.fis.model.*;
/**
* Interface for accessing FIS.
*
* Note: Do not directly implement this interface, new methods are added to it regularly. Extend from
* {@link com.amazonaws.services.fis.AbstractAWSFIS} instead.
*
*
*
* AWS Fault Injection Simulator is a managed service that enables you to perform fault injection experiments on your
* AWS workloads. For more information, see the AWS Fault
* Injection Simulator User Guide.
*
*/
@Generated("com.amazonaws:aws-java-sdk-code-generator")
public interface AWSFIS {
/**
* The region metadata service name for computing region endpoints. You can use this value to retrieve metadata
* (such as supported regions) of the service.
*
* @see RegionUtils#getRegionsForService(String)
*/
String ENDPOINT_PREFIX = "fis";
/**
*
* Creates an experiment template.
*
*
* To create a template, specify the following information:
*
*
* -
*
* Targets: A target can be a specific resource in your AWS environment, or one or more resources that match
* criteria that you specify, for example, resources that have specific tags.
*
*
* -
*
* Actions: The actions to carry out on the target. You can specify multiple actions, the duration of each
* action, and when to start each action during an experiment.
*
*
* -
*
* Stop conditions: If a stop condition is triggered while an experiment is running, the experiment is
* automatically stopped. You can define a stop condition as a CloudWatch alarm.
*
*
*
*
* For more information, see the AWS Fault Injection
* Simulator User Guide.
*
*
* @param createExperimentTemplateRequest
* @return Result of the CreateExperimentTemplate operation returned by the service.
* @throws ValidationException
* The specified input is not valid, or fails to satisfy the constraints for the request.
* @throws ConflictException
* The request could not be processed because of a conflict.
* @throws ResourceNotFoundException
* The specified resource cannot be found.
* @throws ServiceQuotaExceededException
* You have exceeded your service quota.
* @sample AWSFIS.CreateExperimentTemplate
* @see AWS
* API Documentation
*/
CreateExperimentTemplateResult createExperimentTemplate(CreateExperimentTemplateRequest createExperimentTemplateRequest);
/**
*
* Deletes the specified experiment template.
*
*
* @param deleteExperimentTemplateRequest
* @return Result of the DeleteExperimentTemplate operation returned by the service.
* @throws ValidationException
* The specified input is not valid, or fails to satisfy the constraints for the request.
* @throws ResourceNotFoundException
* The specified resource cannot be found.
* @sample AWSFIS.DeleteExperimentTemplate
* @see AWS
* API Documentation
*/
DeleteExperimentTemplateResult deleteExperimentTemplate(DeleteExperimentTemplateRequest deleteExperimentTemplateRequest);
/**
*
* Gets information about the specified AWS FIS action.
*
*
* @param getActionRequest
* @return Result of the GetAction operation returned by the service.
* @throws ValidationException
* The specified input is not valid, or fails to satisfy the constraints for the request.
* @throws ResourceNotFoundException
* The specified resource cannot be found.
* @sample AWSFIS.GetAction
* @see AWS API
* Documentation
*/
GetActionResult getAction(GetActionRequest getActionRequest);
/**
*
* Gets information about the specified experiment.
*
*
* @param getExperimentRequest
* @return Result of the GetExperiment operation returned by the service.
* @throws ValidationException
* The specified input is not valid, or fails to satisfy the constraints for the request.
* @throws ResourceNotFoundException
* The specified resource cannot be found.
* @sample AWSFIS.GetExperiment
* @see AWS API
* Documentation
*/
GetExperimentResult getExperiment(GetExperimentRequest getExperimentRequest);
/**
*
* Gets information about the specified experiment template.
*
*
* @param getExperimentTemplateRequest
* @return Result of the GetExperimentTemplate operation returned by the service.
* @throws ValidationException
* The specified input is not valid, or fails to satisfy the constraints for the request.
* @throws ResourceNotFoundException
* The specified resource cannot be found.
* @sample AWSFIS.GetExperimentTemplate
* @see AWS API
* Documentation
*/
GetExperimentTemplateResult getExperimentTemplate(GetExperimentTemplateRequest getExperimentTemplateRequest);
/**
*
* Lists the available AWS FIS actions.
*
*
* @param listActionsRequest
* @return Result of the ListActions operation returned by the service.
* @throws ValidationException
* The specified input is not valid, or fails to satisfy the constraints for the request.
* @sample AWSFIS.ListActions
* @see AWS API
* Documentation
*/
ListActionsResult listActions(ListActionsRequest listActionsRequest);
/**
*
* Lists your experiment templates.
*
*
* @param listExperimentTemplatesRequest
* @return Result of the ListExperimentTemplates operation returned by the service.
* @throws ValidationException
* The specified input is not valid, or fails to satisfy the constraints for the request.
* @sample AWSFIS.ListExperimentTemplates
* @see AWS
* API Documentation
*/
ListExperimentTemplatesResult listExperimentTemplates(ListExperimentTemplatesRequest listExperimentTemplatesRequest);
/**
*
* Lists your experiments.
*
*
* @param listExperimentsRequest
* @return Result of the ListExperiments operation returned by the service.
* @throws ValidationException
* The specified input is not valid, or fails to satisfy the constraints for the request.
* @sample AWSFIS.ListExperiments
* @see AWS API
* Documentation
*/
ListExperimentsResult listExperiments(ListExperimentsRequest listExperimentsRequest);
/**
*
* Lists the tags for the specified resource.
*
*
* @param listTagsForResourceRequest
* @return Result of the ListTagsForResource operation returned by the service.
* @sample AWSFIS.ListTagsForResource
* @see AWS API
* Documentation
*/
ListTagsForResourceResult listTagsForResource(ListTagsForResourceRequest listTagsForResourceRequest);
/**
*
* Starts running an experiment from the specified experiment template.
*
*
* @param startExperimentRequest
* @return Result of the StartExperiment operation returned by the service.
* @throws ValidationException
* The specified input is not valid, or fails to satisfy the constraints for the request.
* @throws ConflictException
* The request could not be processed because of a conflict.
* @throws ResourceNotFoundException
* The specified resource cannot be found.
* @throws ServiceQuotaExceededException
* You have exceeded your service quota.
* @sample AWSFIS.StartExperiment
* @see AWS API
* Documentation
*/
StartExperimentResult startExperiment(StartExperimentRequest startExperimentRequest);
/**
*
* Stops the specified experiment.
*
*
* @param stopExperimentRequest
* @return Result of the StopExperiment operation returned by the service.
* @throws ValidationException
* The specified input is not valid, or fails to satisfy the constraints for the request.
* @throws ResourceNotFoundException
* The specified resource cannot be found.
* @sample AWSFIS.StopExperiment
* @see AWS API
* Documentation
*/
StopExperimentResult stopExperiment(StopExperimentRequest stopExperimentRequest);
/**
*
* Applies the specified tags to the specified resource.
*
*
* @param tagResourceRequest
* @return Result of the TagResource operation returned by the service.
* @sample AWSFIS.TagResource
* @see AWS API
* Documentation
*/
TagResourceResult tagResource(TagResourceRequest tagResourceRequest);
/**
*
* Removes the specified tags from the specified resource.
*
*
* @param untagResourceRequest
* @return Result of the UntagResource operation returned by the service.
* @sample AWSFIS.UntagResource
* @see AWS API
* Documentation
*/
UntagResourceResult untagResource(UntagResourceRequest untagResourceRequest);
/**
*
* Updates the specified experiment template.
*
*
* @param updateExperimentTemplateRequest
* @return Result of the UpdateExperimentTemplate operation returned by the service.
* @throws ValidationException
* The specified input is not valid, or fails to satisfy the constraints for the request.
* @throws ResourceNotFoundException
* The specified resource cannot be found.
* @throws ServiceQuotaExceededException
* You have exceeded your service quota.
* @sample AWSFIS.UpdateExperimentTemplate
* @see AWS
* API Documentation
*/
UpdateExperimentTemplateResult updateExperimentTemplate(UpdateExperimentTemplateRequest updateExperimentTemplateRequest);
/**
* Shuts down this client object, releasing any resources that might be held open. This is an optional method, and
* callers are not expected to call it, but can if they want to explicitly release any open resources. Once a client
* has been shutdown, it should not be used to make any more requests.
*/
void shutdown();
/**
* Returns additional metadata for a previously executed successful request, typically used for debugging issues
* where a service isn't acting as expected. This data isn't considered part of the result data returned by an
* operation, so it's available through this separate, diagnostic interface.
*
* Response metadata is only cached for a limited period of time, so if you need to access this extra diagnostic
* information for an executed request, you should use this method to retrieve it as soon as possible after
* executing a request.
*
* @param request
* The originally executed request.
*
* @return The response metadata for the specified request, or null if none is available.
*/
ResponseMetadata getCachedResponseMetadata(AmazonWebServiceRequest request);
}