com.amazonaws.services.fis.AWSFIS Maven / Gradle / Ivy
Show all versions of aws-java-sdk-fis Show documentation
/*
* Copyright 2019-2024 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.
*
*
*
* Fault Injection Service is a managed service that enables you to perform fault injection experiments on your Amazon
* Web Services workloads. For more information, see the Fault Injection Service 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.
*
*
* An experiment template includes the following components:
*
*
* -
*
* Targets: A target can be a specific resource in your Amazon Web Services 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 experiment templates in the
* Fault Injection Service 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);
/**
*
* Creates a target account configuration for the experiment template. A target account configuration is required
* when accountTargeting
of experimentOptions
is set to multi-account
. For
* more information, see experiment options in the
* Fault Injection Service User Guide.
*
*
* @param createTargetAccountConfigurationRequest
* @return Result of the CreateTargetAccountConfiguration 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.CreateTargetAccountConfiguration
* @see AWS API Documentation
*/
CreateTargetAccountConfigurationResult createTargetAccountConfiguration(CreateTargetAccountConfigurationRequest createTargetAccountConfigurationRequest);
/**
*
* 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);
/**
*
* Deletes the specified target account configuration of the experiment template.
*
*
* @param deleteTargetAccountConfigurationRequest
* @return Result of the DeleteTargetAccountConfiguration 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.DeleteTargetAccountConfiguration
* @see AWS API Documentation
*/
DeleteTargetAccountConfigurationResult deleteTargetAccountConfiguration(DeleteTargetAccountConfigurationRequest deleteTargetAccountConfigurationRequest);
/**
*
* Gets information about the specified 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 target account configuration of the experiment.
*
*
* @param getExperimentTargetAccountConfigurationRequest
* @return Result of the GetExperimentTargetAccountConfiguration operation returned by the service.
* @throws ResourceNotFoundException
* The specified resource cannot be found.
* @throws ValidationException
* The specified input is not valid, or fails to satisfy the constraints for the request.
* @sample AWSFIS.GetExperimentTargetAccountConfiguration
* @see AWS API Documentation
*/
GetExperimentTargetAccountConfigurationResult getExperimentTargetAccountConfiguration(
GetExperimentTargetAccountConfigurationRequest getExperimentTargetAccountConfigurationRequest);
/**
*
* 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);
/**
*
* Gets information about the specified target account configuration of the experiment template.
*
*
* @param getTargetAccountConfigurationRequest
* @return Result of the GetTargetAccountConfiguration operation returned by the service.
* @throws ResourceNotFoundException
* The specified resource cannot be found.
* @throws ValidationException
* The specified input is not valid, or fails to satisfy the constraints for the request.
* @sample AWSFIS.GetTargetAccountConfiguration
* @see AWS API Documentation
*/
GetTargetAccountConfigurationResult getTargetAccountConfiguration(GetTargetAccountConfigurationRequest getTargetAccountConfigurationRequest);
/**
*
* Gets information about the specified resource type.
*
*
* @param getTargetResourceTypeRequest
* @return Result of the GetTargetResourceType 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.GetTargetResourceType
* @see AWS API
* Documentation
*/
GetTargetResourceTypeResult getTargetResourceType(GetTargetResourceTypeRequest getTargetResourceTypeRequest);
/**
*
* Lists the available 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 the resolved targets information of the specified experiment.
*
*
* @param listExperimentResolvedTargetsRequest
* @return Result of the ListExperimentResolvedTargets 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.ListExperimentResolvedTargets
* @see AWS API Documentation
*/
ListExperimentResolvedTargetsResult listExperimentResolvedTargets(ListExperimentResolvedTargetsRequest listExperimentResolvedTargetsRequest);
/**
*
* Lists the target account configurations of the specified experiment.
*
*
* @param listExperimentTargetAccountConfigurationsRequest
* @return Result of the ListExperimentTargetAccountConfigurations 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.ListExperimentTargetAccountConfigurations
* @see AWS API Documentation
*/
ListExperimentTargetAccountConfigurationsResult listExperimentTargetAccountConfigurations(
ListExperimentTargetAccountConfigurationsRequest listExperimentTargetAccountConfigurationsRequest);
/**
*
* 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);
/**
*
* Lists the target account configurations of the specified experiment template.
*
*
* @param listTargetAccountConfigurationsRequest
* @return Result of the ListTargetAccountConfigurations 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.ListTargetAccountConfigurations
* @see AWS API Documentation
*/
ListTargetAccountConfigurationsResult listTargetAccountConfigurations(ListTargetAccountConfigurationsRequest listTargetAccountConfigurationsRequest);
/**
*
* Lists the target resource types.
*
*
* @param listTargetResourceTypesRequest
* @return Result of the ListTargetResourceTypes operation returned by the service.
* @throws ValidationException
* The specified input is not valid, or fails to satisfy the constraints for the request.
* @sample AWSFIS.ListTargetResourceTypes
* @see AWS
* API Documentation
*/
ListTargetResourceTypesResult listTargetResourceTypes(ListTargetResourceTypesRequest listTargetResourceTypesRequest);
/**
*
* 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);
/**
*
* Updates the target account configuration for the specified experiment template.
*
*
* @param updateTargetAccountConfigurationRequest
* @return Result of the UpdateTargetAccountConfiguration 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.UpdateTargetAccountConfiguration
* @see AWS API Documentation
*/
UpdateTargetAccountConfigurationResult updateTargetAccountConfiguration(UpdateTargetAccountConfigurationRequest updateTargetAccountConfigurationRequest);
/**
* 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);
}