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

templates.common.SyncClientInterface.ftl Maven / Gradle / Ivy

Go to download

The AWS SDK for Java - Code Generator module holds the classes and templates required to generate the AWS Java SDK clients for AWS services.

There is a newer version: 1.11.8
Show newest version
${fileHeader}
<#assign serviceAbbreviation = (metadata.serviceAbbreviation)!metadata.serviceFullName/>
package ${metadata.packageName};

import com.amazonaws.*;
import com.amazonaws.regions.*;

import ${metadata.packageName}.model.*;
<#if hasWaiters>
import ${metadata.packageName}.waiters.${metadata.syncInterface}Waiters;


/**
 * Interface for accessing ${serviceAbbreviation}.
<#if metadata.documentation??>
 * 

* ${metadata.documentation} */ public interface ${metadata.syncInterface} { /** * 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 = "${metadata.endpointPrefix}"; /** * Overrides the default endpoint for this client<#if metadata.defaultEndpoint?has_content> ("${metadata.defaultEndpoint}"). * Callers can use this method to control which AWS region they want to work with. *

* Callers can pass in just the endpoint <#if metadata.defaultEndpointWithoutHttpProtocol?has_content>(ex: "${metadata.defaultEndpointWithoutHttpProtocol}") or a full * URL, including the protocol<#if metadata.defaultEndpoint?has_content> (ex: "${metadata.defaultEndpoint}"). 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<#if metadata.defaultEndpointWithoutHttpProtocol?has_content> (ex: "${metadata.defaultEndpointWithoutHttpProtocol}") or a full URL, * including the protocol<#if metadata.defaultEndpoint?has_content> (ex: "${metadata.defaultEndpoint}") of * the region specific AWS endpoint this client will communicate * with. */ void setEndpoint(String endpoint); <#if shapes.Region?has_content> <#assign regionClassType="com.amazonaws.regions.Region" /> <#else> <#assign regionClassType="Region" /> /** * An alternative to {@link ${metadata.syncInterface}#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 ${regionClassType}#getRegion(com.amazonaws.regions.Regions)} for * accessing a given region. Must not be null and must be a * region where the service is available. * * @see Region#getRegion(com.amazonaws.regions.Regions) * @see Region#createClient(Class, com.amazonaws.auth.AWSCredentialsProvider, ClientConfiguration) * @see ${regionClassType}#isServiceSupported(String) */ void setRegion(${regionClassType} region); <#list operations?values as operationModel> <@InterfaceMethodForOperationMacro.content metadata operationModel /> <#if AdditionalInterfaceMethodsMacro??> <@AdditionalInterfaceMethodsMacro.content .data_model /> <#if customizationConfig.skipInterfaceAdditions == false> /** * 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(); <#assign responseMetadataClassName=customizationConfig.customResponseMetadataClassName!"ResponseMetadata" /> /** * 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. */ ${responseMetadataClassName} getCachedResponseMetadata(AmazonWebServiceRequest request); <#if hasWaiters> ${metadata.syncInterface}Waiters waiters(); }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy