@Generated(value="com.amazonaws:aws-java-sdk-code-generator") public class AbstractAmazonCloudFront extends Object implements AmazonCloudFront
AmazonCloudFront
. Convenient method forms pass through to the corresponding
overload that takes a request object, which throws an UnsupportedOperationException
.ENDPOINT_PREFIX
public void setEndpoint(String endpoint)
AmazonCloudFront
Callers can pass in just the endpoint (ex: "cloudfront.amazonaws.com/") or a full URL, including the protocol
(ex: "https://cloudfront.amazonaws.com/"). If the protocol is not specified here, the default protocol from this
client's 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: https://docs.aws.amazon.com/sdk-for-java/v1/developer-guide/java-dg-region-selection.html#region-selection- choose-endpoint
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.
setEndpoint
in interface AmazonCloudFront
endpoint
- The endpoint (ex: "cloudfront.amazonaws.com/") or a full URL, including the protocol (ex:
"https://cloudfront.amazonaws.com/") of the region specific AWS endpoint this client will communicate
with.public void setRegion(Region region)
AmazonCloudFront
AmazonCloudFront.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
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.
setRegion
in interface AmazonCloudFront
region
- The region this client will communicate with. See Region.getRegion(com.amazonaws.regions.Regions)
for accessing a given region. Must not be null and must be a region where the service is available.Region.getRegion(com.amazonaws.regions.Regions)
,
Region.createClient(Class, com.amazonaws.auth.AWSCredentialsProvider, ClientConfiguration)
,
Region.isServiceSupported(String)
public CreateCloudFrontOriginAccessIdentityResult createCloudFrontOriginAccessIdentity(CreateCloudFrontOriginAccessIdentityRequest request)
AmazonCloudFront
Creates a new origin access identity. If you're using Amazon S3 for your origin, you can use an origin access identity to require users to access your content using a CloudFront URL instead of the Amazon S3 URL. For more information about how to use origin access identities, see Serving Private Content through CloudFront in the Amazon CloudFront Developer Guide.
createCloudFrontOriginAccessIdentity
in interface AmazonCloudFront
request
- The request to create a new origin access identity (OAI). An origin access identity is a special
CloudFront user that you can associate with Amazon S3 origins, so that you can secure all or just some of
your Amazon S3 content. For more information, see Restricting Access to Amazon S3 Content by Using an Origin Access Identity in the Amazon
CloudFront Developer Guide.public CreateDistributionResult createDistribution(CreateDistributionRequest request)
AmazonCloudFront
Creates a new web distribution. You create a CloudFront distribution to tell CloudFront where you want content to
be delivered from, and the details about how to track and manage content delivery. Send a POST
request to the /CloudFront API version/distribution
/distribution ID
resource.
When you update a distribution, there are more required fields than when you create a distribution. When you update your distribution by using UpdateDistribution, follow the steps included in the documentation to get the current configuration and then make your updates. This helps to make sure that you include all of the required fields. To view a summary, see Required Fields for Create Distribution and Update Distribution in the Amazon CloudFront Developer Guide.
createDistribution
in interface AmazonCloudFront
request
- The request to create a new distribution.public CreateDistributionWithTagsResult createDistributionWithTags(CreateDistributionWithTagsRequest request)
AmazonCloudFront
Create a new distribution with tags.
createDistributionWithTags
in interface AmazonCloudFront
request
- The request to create a new distribution with tags.public CreateFieldLevelEncryptionConfigResult createFieldLevelEncryptionConfig(CreateFieldLevelEncryptionConfigRequest request)
AmazonCloudFront
Create a new field-level encryption configuration.
createFieldLevelEncryptionConfig
in interface AmazonCloudFront
public CreateFieldLevelEncryptionProfileResult createFieldLevelEncryptionProfile(CreateFieldLevelEncryptionProfileRequest request)
AmazonCloudFront
Create a field-level encryption profile.
createFieldLevelEncryptionProfile
in interface AmazonCloudFront
public CreateInvalidationResult createInvalidation(CreateInvalidationRequest request)
AmazonCloudFront
Create a new invalidation.
createInvalidation
in interface AmazonCloudFront
request
- The request to create an invalidation.public CreatePublicKeyResult createPublicKey(CreatePublicKeyRequest request)
AmazonCloudFront
Add a new public key to CloudFront to use, for example, for field-level encryption. You can add a maximum of 10 public keys with one AWS account.
createPublicKey
in interface AmazonCloudFront
public CreateStreamingDistributionResult createStreamingDistribution(CreateStreamingDistributionRequest request)
AmazonCloudFront
Creates a new RTMP distribution. An RTMP distribution is similar to a web distribution, but an RTMP distribution streams media files using the Adobe Real-Time Messaging Protocol (RTMP) instead of serving files using HTTP.
To create a new distribution, submit a POST
request to the CloudFront API
version/distribution resource. The request body must include a document with a
StreamingDistributionConfig element. The response echoes the StreamingDistributionConfig
element and returns other information about the RTMP distribution.
To get the status of your request, use the GET StreamingDistribution API action. When the value of
Enabled
is true
and the value of Status
is Deployed
, your
distribution is ready. A distribution usually deploys in less than 15 minutes.
For more information about web distributions, see Working with RTMP Distributions in the Amazon CloudFront Developer Guide.
Beginning with the 2012-05-05 version of the CloudFront API, we made substantial changes to the format of the XML
document that you include in the request body when you create or update a web distribution or an RTMP
distribution, and when you invalidate objects. With previous versions of the API, we discovered that it was too
easy to accidentally delete one or more values for an element that accepts multiple values, for example, CNAMEs
and trusted signers. Our changes for the 2012-05-05 release are intended to prevent these accidental deletions
and to notify you when there's a mismatch between the number of values you say you're specifying in the
Quantity
element and the number of values specified.
createStreamingDistribution
in interface AmazonCloudFront
request
- The request to create a new streaming distribution.public CreateStreamingDistributionWithTagsResult createStreamingDistributionWithTags(CreateStreamingDistributionWithTagsRequest request)
AmazonCloudFront
Create a new streaming distribution with tags.
createStreamingDistributionWithTags
in interface AmazonCloudFront
request
- The request to create a new streaming distribution with tags.public DeleteCloudFrontOriginAccessIdentityResult deleteCloudFrontOriginAccessIdentity(DeleteCloudFrontOriginAccessIdentityRequest request)
AmazonCloudFront
Delete an origin access identity.
deleteCloudFrontOriginAccessIdentity
in interface AmazonCloudFront
request
- Deletes a origin access identity.public DeleteDistributionResult deleteDistribution(DeleteDistributionRequest request)
AmazonCloudFront
Delete a distribution.
deleteDistribution
in interface AmazonCloudFront
request
- This action deletes a web distribution. To delete a web distribution using the CloudFront API, perform the
following steps.
To delete a web distribution using the CloudFront API:
Disable the web distribution
Submit a GET Distribution Config
request to get the current configuration and the
Etag
header for the distribution.
Update the XML document that was returned in the response to your GET Distribution Config
request to change the value of Enabled
to false
.
Submit a PUT Distribution Config
request to update the configuration for your distribution.
In the request body, include the XML document that you updated in Step 3. Set the value of the HTTP
If-Match
header to the value of the ETag
header that CloudFront returned when
you submitted the GET Distribution Config
request in Step 2.
Review the response to the PUT Distribution Config
request to confirm that the distribution
was successfully disabled.
Submit a GET Distribution
request to confirm that your changes have propagated. When
propagation is complete, the value of Status
is Deployed
.
Submit a DELETE Distribution
request. Set the value of the HTTP If-Match
header
to the value of the ETag
header that CloudFront returned when you submitted the
GET Distribution Config
request in Step 6.
Review the response to your DELETE Distribution
request to confirm that the distribution was
successfully deleted.
For information about deleting a distribution using the CloudFront console, see Deleting a Distribution in the Amazon CloudFront Developer Guide.
public DeleteFieldLevelEncryptionConfigResult deleteFieldLevelEncryptionConfig(DeleteFieldLevelEncryptionConfigRequest request)
AmazonCloudFront
Remove a field-level encryption configuration.
deleteFieldLevelEncryptionConfig
in interface AmazonCloudFront
public DeleteFieldLevelEncryptionProfileResult deleteFieldLevelEncryptionProfile(DeleteFieldLevelEncryptionProfileRequest request)
AmazonCloudFront
Remove a field-level encryption profile.
deleteFieldLevelEncryptionProfile
in interface AmazonCloudFront
public DeletePublicKeyResult deletePublicKey(DeletePublicKeyRequest request)
AmazonCloudFront
Remove a public key you previously added to CloudFront.
deletePublicKey
in interface AmazonCloudFront
public DeleteStreamingDistributionResult deleteStreamingDistribution(DeleteStreamingDistributionRequest request)
AmazonCloudFront
Delete a streaming distribution. To delete an RTMP distribution using the CloudFront API, perform the following steps.
To delete an RTMP distribution using the CloudFront API:
Disable the RTMP distribution.
Submit a GET Streaming Distribution Config
request to get the current configuration and the
Etag
header for the distribution.
Update the XML document that was returned in the response to your GET Streaming Distribution Config
request to change the value of Enabled
to false
.
Submit a PUT Streaming Distribution Config
request to update the configuration for your
distribution. In the request body, include the XML document that you updated in Step 3. Then set the value of the
HTTP If-Match
header to the value of the ETag
header that CloudFront returned when you
submitted the GET Streaming Distribution Config
request in Step 2.
Review the response to the PUT Streaming Distribution Config
request to confirm that the
distribution was successfully disabled.
Submit a GET Streaming Distribution Config
request to confirm that your changes have propagated.
When propagation is complete, the value of Status
is Deployed
.
Submit a DELETE Streaming Distribution
request. Set the value of the HTTP If-Match
header to the value of the ETag
header that CloudFront returned when you submitted the
GET Streaming Distribution Config
request in Step 2.
Review the response to your DELETE Streaming Distribution
request to confirm that the distribution
was successfully deleted.
For information about deleting a distribution using the CloudFront console, see Deleting a Distribution in the Amazon CloudFront Developer Guide.
deleteStreamingDistribution
in interface AmazonCloudFront
request
- The request to delete a streaming distribution.public GetCloudFrontOriginAccessIdentityResult getCloudFrontOriginAccessIdentity(GetCloudFrontOriginAccessIdentityRequest request)
AmazonCloudFront
Get the information about an origin access identity.
getCloudFrontOriginAccessIdentity
in interface AmazonCloudFront
request
- The request to get an origin access identity's information.public GetCloudFrontOriginAccessIdentityConfigResult getCloudFrontOriginAccessIdentityConfig(GetCloudFrontOriginAccessIdentityConfigRequest request)
AmazonCloudFront
Get the configuration information about an origin access identity.
getCloudFrontOriginAccessIdentityConfig
in interface AmazonCloudFront
request
- The origin access identity's configuration information. For more information, see CloudFrontOriginAccessIdentityConfig.public GetDistributionResult getDistribution(GetDistributionRequest request)
AmazonCloudFront
Get the information about a distribution.
getDistribution
in interface AmazonCloudFront
request
- The request to get a distribution's information.public GetDistributionConfigResult getDistributionConfig(GetDistributionConfigRequest request)
AmazonCloudFront
Get the configuration information about a distribution.
getDistributionConfig
in interface AmazonCloudFront
request
- The request to get a distribution configuration.public GetFieldLevelEncryptionResult getFieldLevelEncryption(GetFieldLevelEncryptionRequest request)
AmazonCloudFront
Get the field-level encryption configuration information.
getFieldLevelEncryption
in interface AmazonCloudFront
public GetFieldLevelEncryptionConfigResult getFieldLevelEncryptionConfig(GetFieldLevelEncryptionConfigRequest request)
AmazonCloudFront
Get the field-level encryption configuration information.
getFieldLevelEncryptionConfig
in interface AmazonCloudFront
public GetFieldLevelEncryptionProfileResult getFieldLevelEncryptionProfile(GetFieldLevelEncryptionProfileRequest request)
AmazonCloudFront
Get the field-level encryption profile information.
getFieldLevelEncryptionProfile
in interface AmazonCloudFront
public GetFieldLevelEncryptionProfileConfigResult getFieldLevelEncryptionProfileConfig(GetFieldLevelEncryptionProfileConfigRequest request)
AmazonCloudFront
Get the field-level encryption profile configuration information.
getFieldLevelEncryptionProfileConfig
in interface AmazonCloudFront
public GetInvalidationResult getInvalidation(GetInvalidationRequest request)
AmazonCloudFront
Get the information about an invalidation.
getInvalidation
in interface AmazonCloudFront
request
- The request to get an invalidation's information.public GetPublicKeyResult getPublicKey(GetPublicKeyRequest request)
AmazonCloudFront
Get the public key information.
getPublicKey
in interface AmazonCloudFront
public GetPublicKeyConfigResult getPublicKeyConfig(GetPublicKeyConfigRequest request)
AmazonCloudFront
Return public key configuration informaation
getPublicKeyConfig
in interface AmazonCloudFront
public GetStreamingDistributionResult getStreamingDistribution(GetStreamingDistributionRequest request)
AmazonCloudFront
Gets information about a specified RTMP distribution, including the distribution configuration.
getStreamingDistribution
in interface AmazonCloudFront
request
- The request to get a streaming distribution's information.public GetStreamingDistributionConfigResult getStreamingDistributionConfig(GetStreamingDistributionConfigRequest request)
AmazonCloudFront
Get the configuration information about a streaming distribution.
getStreamingDistributionConfig
in interface AmazonCloudFront
request
- To request to get a streaming distribution configuration.public ListCloudFrontOriginAccessIdentitiesResult listCloudFrontOriginAccessIdentities(ListCloudFrontOriginAccessIdentitiesRequest request)
AmazonCloudFront
Lists origin access identities.
listCloudFrontOriginAccessIdentities
in interface AmazonCloudFront
request
- The request to list origin access identities.public ListDistributionsResult listDistributions(ListDistributionsRequest request)
AmazonCloudFront
List CloudFront distributions.
listDistributions
in interface AmazonCloudFront
request
- The request to list your distributions.public ListDistributionsByWebACLIdResult listDistributionsByWebACLId(ListDistributionsByWebACLIdRequest request)
AmazonCloudFront
List the distributions that are associated with a specified AWS WAF web ACL.
listDistributionsByWebACLId
in interface AmazonCloudFront
request
- The request to list distributions that are associated with a specified AWS WAF web ACL.public ListFieldLevelEncryptionConfigsResult listFieldLevelEncryptionConfigs(ListFieldLevelEncryptionConfigsRequest request)
AmazonCloudFront
List all field-level encryption configurations that have been created in CloudFront for this account.
listFieldLevelEncryptionConfigs
in interface AmazonCloudFront
public ListFieldLevelEncryptionProfilesResult listFieldLevelEncryptionProfiles(ListFieldLevelEncryptionProfilesRequest request)
AmazonCloudFront
Request a list of field-level encryption profiles that have been created in CloudFront for this account.
listFieldLevelEncryptionProfiles
in interface AmazonCloudFront
public ListInvalidationsResult listInvalidations(ListInvalidationsRequest request)
AmazonCloudFront
Lists invalidation batches.
listInvalidations
in interface AmazonCloudFront
request
- The request to list invalidations.public ListPublicKeysResult listPublicKeys(ListPublicKeysRequest request)
AmazonCloudFront
List all public keys that have been added to CloudFront for this account.
listPublicKeys
in interface AmazonCloudFront
public ListStreamingDistributionsResult listStreamingDistributions(ListStreamingDistributionsRequest request)
AmazonCloudFront
List streaming distributions.
listStreamingDistributions
in interface AmazonCloudFront
request
- The request to list your streaming distributions.public ListTagsForResourceResult listTagsForResource(ListTagsForResourceRequest request)
AmazonCloudFront
List tags for a CloudFront resource.
listTagsForResource
in interface AmazonCloudFront
request
- The request to list tags for a CloudFront resource.public TagResourceResult tagResource(TagResourceRequest request)
AmazonCloudFront
Add tags to a CloudFront resource.
tagResource
in interface AmazonCloudFront
request
- The request to add tags to a CloudFront resource.public UntagResourceResult untagResource(UntagResourceRequest request)
AmazonCloudFront
Remove tags from a CloudFront resource.
untagResource
in interface AmazonCloudFront
request
- The request to remove tags from a CloudFront resource.public UpdateCloudFrontOriginAccessIdentityResult updateCloudFrontOriginAccessIdentity(UpdateCloudFrontOriginAccessIdentityRequest request)
AmazonCloudFront
Update an origin access identity.
updateCloudFrontOriginAccessIdentity
in interface AmazonCloudFront
request
- The request to update an origin access identity.public UpdateDistributionResult updateDistribution(UpdateDistributionRequest request)
AmazonCloudFront
Updates the configuration for a web distribution.
When you update a distribution, there are more required fields than when you create a distribution. When you update your distribution by using this API action, follow the steps here to get the current configuration and then make your updates, to make sure that you include all of the required fields. To view a summary, see Required Fields for Create Distribution and Update Distribution in the Amazon CloudFront Developer Guide.
The update process includes getting the current distribution configuration, updating the XML document that is
returned to make your changes, and then submitting an UpdateDistribution
request to make the
updates.
For information about updating a distribution using the CloudFront console instead, see Creating a Distribution in the Amazon CloudFront Developer Guide.
To update a web distribution using the CloudFront API
Submit a
GetDistributionConfig request to get the current configuration and an Etag
header for the
distribution.
If you update the distribution again, you must get a new Etag
header.
Update the XML document that was returned in the response to your GetDistributionConfig
request to
include your changes.
When you edit the XML file, be aware of the following:
You must strip out the ETag parameter that is returned.
Additional fields are required when you update a distribution. There may be fields included in the XML file for features that you haven't configured for your distribution. This is expected and required to successfully update the distribution.
You can't change the value of CallerReference
. If you try to change this value, CloudFront returns
an IllegalUpdate
error.
The new configuration replaces the existing configuration; the values that you specify in an
UpdateDistribution
request are not merged into your existing configuration. When you add, delete, or
replace values in an element that allows multiple values (for example, CNAME
), you must specify all
of the values that you want to appear in the updated distribution. In addition, you must update the corresponding
Quantity
element.
Submit an UpdateDistribution
request to update the configuration for your distribution:
In the request body, include the XML document that you updated in Step 2. The request body must include an XML
document with a DistributionConfig
element.
Set the value of the HTTP If-Match
header to the value of the ETag
header that
CloudFront returned when you submitted the GetDistributionConfig
request in Step 1.
Review the response to the UpdateDistribution
request to confirm that the configuration was
successfully updated.
Optional: Submit a GetDistribution
request to confirm that your changes have propagated. When propagation is complete, the value of
Status
is Deployed
.
updateDistribution
in interface AmazonCloudFront
request
- The request to update a distribution.public UpdateFieldLevelEncryptionConfigResult updateFieldLevelEncryptionConfig(UpdateFieldLevelEncryptionConfigRequest request)
AmazonCloudFront
Update a field-level encryption configuration.
updateFieldLevelEncryptionConfig
in interface AmazonCloudFront
public UpdateFieldLevelEncryptionProfileResult updateFieldLevelEncryptionProfile(UpdateFieldLevelEncryptionProfileRequest request)
AmazonCloudFront
Update a field-level encryption profile.
updateFieldLevelEncryptionProfile
in interface AmazonCloudFront
public UpdatePublicKeyResult updatePublicKey(UpdatePublicKeyRequest request)
AmazonCloudFront
Update public key information. Note that the only value you can change is the comment.
updatePublicKey
in interface AmazonCloudFront
public UpdateStreamingDistributionResult updateStreamingDistribution(UpdateStreamingDistributionRequest request)
AmazonCloudFront
Update a streaming distribution.
updateStreamingDistribution
in interface AmazonCloudFront
request
- The request to update a streaming distribution.public void shutdown()
AmazonCloudFront
shutdown
in interface AmazonCloudFront
public ResponseMetadata getCachedResponseMetadata(AmazonWebServiceRequest request)
AmazonCloudFront
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.
getCachedResponseMetadata
in interface AmazonCloudFront
request
- The originally executed request.public AmazonCloudFrontWaiters waiters()
waiters
in interface AmazonCloudFront
Copyright © 2013 Amazon Web Services, Inc. All Rights Reserved.