All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.amazonaws.services.cloudformation.AmazonCloudFormation Maven / Gradle / Ivy

Go to download

The Amazon Web Services SDK for Java provides Java APIs for building software on AWS' cost-effective, scalable, and reliable infrastructure products. The AWS Java SDK allows developers to code against APIs for all of Amazon's infrastructure web services (Amazon S3, Amazon EC2, Amazon SQS, Amazon Relational Database Service, Amazon AutoScaling, etc).

The newest version!
/*
 * Copyright 2010-2014 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.cloudformation;

import com.amazonaws.*;
import com.amazonaws.regions.*;
import com.amazonaws.services.cloudformation.model.*;

/**
 * Interface for accessing AmazonCloudFormation.
 * AWS CloudFormation 

* AWS CloudFormation enables you to create and manage AWS infrastructure * deployments predictably and repeatedly. AWS CloudFormation helps you * leverage AWS products such as Amazon EC2, EBS, Amazon SNS, ELB, and * Auto Scaling to build highly-reliable, highly scalable, cost effective * applications without worrying about creating and configuring the * underlying AWS infrastructure. *

*

* With AWS CloudFormation, you declare all of your resources and * dependencies in a template file. The template defines a collection of * resources as a single unit called a stack. AWS CloudFormation creates * and deletes all member resources of the stack together and manages all * dependencies between the resources for you. *

*

* For more information about this product, go to the * CloudFormation Product Page * . *

*

* Amazon CloudFormation makes use of other AWS products. If you need * additional technical information about a specific AWS product, you can * find the product's technical documentation at * http://aws.amazon.com/documentation/ * . *

*/ public interface AmazonCloudFormation { /** * Overrides the default endpoint for this client ("https://cloudformation.us-east-1.amazonaws.com"). * Callers can use this method to control which AWS region they want to work with. *

* Callers can pass in just the endpoint (ex: "cloudformation.us-east-1.amazonaws.com") or a full * URL, including the protocol (ex: "https://cloudformation.us-east-1.amazonaws.com"). If the * protocol is not specified here, the default protocol from this client's * {@link ClientConfiguration} will be used, which by default is HTTPS. *

* For more information on using AWS regions with the AWS SDK for Java, and * a complete list of all available endpoints for all AWS services, see: * * http://developer.amazonwebservices.com/connect/entry.jspa?externalID=3912 *

* This method is not threadsafe. An endpoint should be configured when the * client is created and before any service requests are made. Changing it * afterwards creates inevitable race conditions for any service requests in * transit or retrying. * * @param endpoint * The endpoint (ex: "cloudformation.us-east-1.amazonaws.com") or a full URL, * including the protocol (ex: "https://cloudformation.us-east-1.amazonaws.com") of * the region specific AWS endpoint this client will communicate * with. * * @throws IllegalArgumentException * If any problems are detected with the specified endpoint. */ public void setEndpoint(String endpoint) throws java.lang.IllegalArgumentException; /** * An alternative to {@link AmazonCloudFormation#setEndpoint(String)}, sets the * regional endpoint for this client's service calls. Callers can use this * method to control which AWS region they want to work with. *

* By default, all service endpoints in all regions use the https protocol. * To use http instead, specify it in the {@link ClientConfiguration} * supplied at construction. *

* This method is not threadsafe. A region should be configured when the * client is created and before any service requests are made. Changing it * afterwards creates inevitable race conditions for any service requests in * transit or retrying. * * @param region * The region this client will communicate with. See * {@link Region#getRegion(com.amazonaws.regions.Regions)} for * accessing a given region. * @throws java.lang.IllegalArgumentException * If the given region is null, or if this service isn't * available in the given region. See * {@link Region#isServiceSupported(String)} * @see Region#getRegion(com.amazonaws.regions.Regions) * @see Region#createClient(Class, com.amazonaws.auth.AWSCredentialsProvider, ClientConfiguration) */ public void setRegion(Region region) throws java.lang.IllegalArgumentException; /** *

* Validates a specified template. *

* * @param validateTemplateRequest Container for the necessary parameters * to execute the ValidateTemplate service method on * AmazonCloudFormation. * * @return The response from the ValidateTemplate service method, as * returned by AmazonCloudFormation. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonCloudFormation indicating * either a problem with the data in the request, or a server side issue. */ public ValidateTemplateResult validateTemplate(ValidateTemplateRequest validateTemplateRequest) throws AmazonServiceException, AmazonClientException; /** *

* Returns the description for the specified stack; if no stack name was * specified, then it returns the description for all the stacks created. *

* * @param describeStacksRequest Container for the necessary parameters to * execute the DescribeStacks service method on AmazonCloudFormation. * * @return The response from the DescribeStacks service method, as * returned by AmazonCloudFormation. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonCloudFormation indicating * either a problem with the data in the request, or a server side issue. */ public DescribeStacksResult describeStacks(DescribeStacksRequest describeStacksRequest) throws AmazonServiceException, AmazonClientException; /** *

* Returns the template body for a specified stack. You can get the * template for running or deleted stacks. *

*

* For deleted stacks, GetTemplate returns the template for up to 90 days * after the stack has been deleted. *

*

* NOTE: If the template does not exist, a ValidationError is * returned. *

* * @param getTemplateRequest Container for the necessary parameters to * execute the GetTemplate service method on AmazonCloudFormation. * * @return The response from the GetTemplate service method, as returned * by AmazonCloudFormation. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonCloudFormation indicating * either a problem with the data in the request, or a server side issue. */ public GetTemplateResult getTemplate(GetTemplateRequest getTemplateRequest) throws AmazonServiceException, AmazonClientException; /** *

* Returns the stack policy for a specified stack. If a stack doesn't * have a policy, a null value is returned. *

* * @param getStackPolicyRequest Container for the necessary parameters to * execute the GetStackPolicy service method on AmazonCloudFormation. * * @return The response from the GetStackPolicy service method, as * returned by AmazonCloudFormation. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonCloudFormation indicating * either a problem with the data in the request, or a server side issue. */ public GetStackPolicyResult getStackPolicy(GetStackPolicyRequest getStackPolicyRequest) throws AmazonServiceException, AmazonClientException; /** *

* Returns the summary information for stacks whose status matches the * specified StackStatusFilter. Summary information for stacks that have * been deleted is kept for 90 days after the stack is deleted. If no * StackStatusFilter is specified, summary information for all stacks is * returned (including existing stacks and stacks that have been * deleted). *

* * @param listStacksRequest Container for the necessary parameters to * execute the ListStacks service method on AmazonCloudFormation. * * @return The response from the ListStacks service method, as returned * by AmazonCloudFormation. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonCloudFormation indicating * either a problem with the data in the request, or a server side issue. */ public ListStacksResult listStacks(ListStacksRequest listStacksRequest) throws AmazonServiceException, AmazonClientException; /** *

* Creates a stack as specified in the template. After the call completes * successfully, the stack creation starts. You can check the status of * the stack via the DescribeStacks API. *

* * @param createStackRequest Container for the necessary parameters to * execute the CreateStack service method on AmazonCloudFormation. * * @return The response from the CreateStack service method, as returned * by AmazonCloudFormation. * * @throws AlreadyExistsException * @throws LimitExceededException * @throws InsufficientCapabilitiesException * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonCloudFormation indicating * either a problem with the data in the request, or a server side issue. */ public CreateStackResult createStack(CreateStackRequest createStackRequest) throws AmazonServiceException, AmazonClientException; /** *

* Sets a stack policy for a specified stack. *

* * @param setStackPolicyRequest Container for the necessary parameters to * execute the SetStackPolicy service method on AmazonCloudFormation. * * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonCloudFormation indicating * either a problem with the data in the request, or a server side issue. */ public void setStackPolicy(SetStackPolicyRequest setStackPolicyRequest) throws AmazonServiceException, AmazonClientException; /** *

* Returns the estimated monthly cost of a template. The return value is * an AWS Simple Monthly Calculator URL with a query string that * describes the resources required to run the template. *

* * @param estimateTemplateCostRequest Container for the necessary * parameters to execute the EstimateTemplateCost service method on * AmazonCloudFormation. * * @return The response from the EstimateTemplateCost service method, as * returned by AmazonCloudFormation. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonCloudFormation indicating * either a problem with the data in the request, or a server side issue. */ public EstimateTemplateCostResult estimateTemplateCost(EstimateTemplateCostRequest estimateTemplateCostRequest) throws AmazonServiceException, AmazonClientException; /** *

* Returns all stack related events for a specified stack. For more * information about a stack's event history, go to * Stacks * in the AWS CloudFormation User Guide. *

*

* NOTE:Events are returned, even if the stack never existed or * has been successfully deleted. *

* * @param describeStackEventsRequest Container for the necessary * parameters to execute the DescribeStackEvents service method on * AmazonCloudFormation. * * @return The response from the DescribeStackEvents service method, as * returned by AmazonCloudFormation. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonCloudFormation indicating * either a problem with the data in the request, or a server side issue. */ public DescribeStackEventsResult describeStackEvents(DescribeStackEventsRequest describeStackEventsRequest) throws AmazonServiceException, AmazonClientException; /** *

* Returns a description of the specified resource in the specified * stack. *

*

* For deleted stacks, DescribeStackResource returns resource information * for up to 90 days after the stack has been deleted. *

* * @param describeStackResourceRequest Container for the necessary * parameters to execute the DescribeStackResource service method on * AmazonCloudFormation. * * @return The response from the DescribeStackResource service method, as * returned by AmazonCloudFormation. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonCloudFormation indicating * either a problem with the data in the request, or a server side issue. */ public DescribeStackResourceResult describeStackResource(DescribeStackResourceRequest describeStackResourceRequest) throws AmazonServiceException, AmazonClientException; /** *

* Cancels an update on the specified stack. If the call completes * successfully, the stack will roll back the update and revert to the * previous stack configuration. *

*

* NOTE:Only stacks that are in the UPDATE_IN_PROGRESS state can * be canceled. *

* * @param cancelUpdateStackRequest Container for the necessary parameters * to execute the CancelUpdateStack service method on * AmazonCloudFormation. * * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonCloudFormation indicating * either a problem with the data in the request, or a server side issue. */ public void cancelUpdateStack(CancelUpdateStackRequest cancelUpdateStackRequest) throws AmazonServiceException, AmazonClientException; /** *

* Updates a stack as specified in the template. After the call completes * successfully, the stack update starts. You can check the status of the * stack via the DescribeStacks action. *

*

* To get a copy of the template for an existing stack, you can use the * GetTemplate action. *

*

* Tags that were associated with this stack during creation time will * still be associated with the stack after an UpdateStack * operation. *

*

* For more information about creating an update template, updating a * stack, and monitoring the progress of the update, see * Updating a Stack * . *

* * @param updateStackRequest Container for the necessary parameters to * execute the UpdateStack service method on AmazonCloudFormation. * * @return The response from the UpdateStack service method, as returned * by AmazonCloudFormation. * * @throws InsufficientCapabilitiesException * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonCloudFormation indicating * either a problem with the data in the request, or a server side issue. */ public UpdateStackResult updateStack(UpdateStackRequest updateStackRequest) throws AmazonServiceException, AmazonClientException; /** *

* Returns AWS resource descriptions for running and deleted stacks. If * StackName is specified, all the associated resources that * are part of the stack are returned. If PhysicalResourceId * is specified, the associated resources of the stack that the resource * belongs to are returned. *

*

* NOTE:Only the first 100 resources will be returned. If your * stack has more resources than this, you should use ListStackResources * instead. *

*

* For deleted stacks, DescribeStackResources returns * resource information for up to 90 days after the stack has been * deleted. *

*

* You must specify either StackName or * PhysicalResourceId , but not both. In addition, you can * specify LogicalResourceId to filter the returned result. * For more information about resources, the * LogicalResourceId and PhysicalResourceId , * go to the * AWS CloudFormation User Guide * . *

*

* NOTE:A ValidationError is returned if you specify both * StackName and PhysicalResourceId in the same request. *

* * @param describeStackResourcesRequest Container for the necessary * parameters to execute the DescribeStackResources service method on * AmazonCloudFormation. * * @return The response from the DescribeStackResources service method, * as returned by AmazonCloudFormation. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonCloudFormation indicating * either a problem with the data in the request, or a server side issue. */ public DescribeStackResourcesResult describeStackResources(DescribeStackResourcesRequest describeStackResourcesRequest) throws AmazonServiceException, AmazonClientException; /** *

* Deletes a specified stack. Once the call completes successfully, stack * deletion starts. Deleted stacks do not show up in the DescribeStacks * API if the deletion has been completed successfully. *

* * @param deleteStackRequest Container for the necessary parameters to * execute the DeleteStack service method on AmazonCloudFormation. * * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonCloudFormation indicating * either a problem with the data in the request, or a server side issue. */ public void deleteStack(DeleteStackRequest deleteStackRequest) throws AmazonServiceException, AmazonClientException; /** *

* Returns descriptions of all resources of the specified stack. *

*

* For deleted stacks, ListStackResources returns resource information * for up to 90 days after the stack has been deleted. *

* * @param listStackResourcesRequest Container for the necessary * parameters to execute the ListStackResources service method on * AmazonCloudFormation. * * @return The response from the ListStackResources service method, as * returned by AmazonCloudFormation. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonCloudFormation indicating * either a problem with the data in the request, or a server side issue. */ public ListStackResourcesResult listStackResources(ListStackResourcesRequest listStackResourcesRequest) throws AmazonServiceException, AmazonClientException; /** *

* Returns the description for the specified stack; if no stack name was * specified, then it returns the description for all the stacks created. *

* * @return The response from the DescribeStacks service method, as * returned by AmazonCloudFormation. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonCloudFormation indicating * either a problem with the data in the request, or a server side issue. */ public DescribeStacksResult describeStacks() throws AmazonServiceException, AmazonClientException; /** *

* Returns the summary information for stacks whose status matches the * specified StackStatusFilter. Summary information for stacks that have * been deleted is kept for 90 days after the stack is deleted. If no * StackStatusFilter is specified, summary information for all stacks is * returned (including existing stacks and stacks that have been * deleted). *

* * @return The response from the ListStacks service method, as returned * by AmazonCloudFormation. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonCloudFormation indicating * either a problem with the data in the request, or a server side issue. */ public ListStacksResult listStacks() throws AmazonServiceException, AmazonClientException; /** *

* Returns the estimated monthly cost of a template. The return value is * an AWS Simple Monthly Calculator URL with a query string that * describes the resources required to run the template. *

* * @return The response from the EstimateTemplateCost service method, as * returned by AmazonCloudFormation. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonCloudFormation indicating * either a problem with the data in the request, or a server side issue. */ public EstimateTemplateCostResult estimateTemplateCost() throws AmazonServiceException, AmazonClientException; /** * 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. */ public 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. */ public ResponseMetadata getCachedResponseMetadata(AmazonWebServiceRequest request); }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy