10801 lines
395 KiB
Go
10801 lines
395 KiB
Go
// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
|
|
|
|
package cloudfront
|
|
|
|
import (
|
|
"fmt"
|
|
"time"
|
|
|
|
"github.com/aws/aws-sdk-go/aws"
|
|
"github.com/aws/aws-sdk-go/aws/awsutil"
|
|
"github.com/aws/aws-sdk-go/aws/request"
|
|
"github.com/aws/aws-sdk-go/private/protocol"
|
|
"github.com/aws/aws-sdk-go/private/protocol/restxml"
|
|
)
|
|
|
|
const opCreateCloudFrontOriginAccessIdentity = "CreateCloudFrontOriginAccessIdentity2017_03_25"
|
|
|
|
// CreateCloudFrontOriginAccessIdentityRequest generates a "aws/request.Request" representing the
|
|
// client's request for the CreateCloudFrontOriginAccessIdentity operation. The "output" return
|
|
// value will be populated with the request's response once the request complets
|
|
// successfuly.
|
|
//
|
|
// Use "Send" method on the returned Request to send the API call to the service.
|
|
// the "output" return value is not valid until after Send returns without error.
|
|
//
|
|
// See CreateCloudFrontOriginAccessIdentity for more information on using the CreateCloudFrontOriginAccessIdentity
|
|
// API call, and error handling.
|
|
//
|
|
// This method is useful when you want to inject custom logic or configuration
|
|
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
|
|
//
|
|
//
|
|
// // Example sending a request using the CreateCloudFrontOriginAccessIdentityRequest method.
|
|
// req, resp := client.CreateCloudFrontOriginAccessIdentityRequest(params)
|
|
//
|
|
// err := req.Send()
|
|
// if err == nil { // resp is now filled
|
|
// fmt.Println(resp)
|
|
// }
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/CreateCloudFrontOriginAccessIdentity
|
|
func (c *CloudFront) CreateCloudFrontOriginAccessIdentityRequest(input *CreateCloudFrontOriginAccessIdentityInput) (req *request.Request, output *CreateCloudFrontOriginAccessIdentityOutput) {
|
|
op := &request.Operation{
|
|
Name: opCreateCloudFrontOriginAccessIdentity,
|
|
HTTPMethod: "POST",
|
|
HTTPPath: "/2017-03-25/origin-access-identity/cloudfront",
|
|
}
|
|
|
|
if input == nil {
|
|
input = &CreateCloudFrontOriginAccessIdentityInput{}
|
|
}
|
|
|
|
output = &CreateCloudFrontOriginAccessIdentityOutput{}
|
|
req = c.newRequest(op, input, output)
|
|
return
|
|
}
|
|
|
|
// CreateCloudFrontOriginAccessIdentity API operation for Amazon CloudFront.
|
|
//
|
|
// 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 (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html)
|
|
// in the Amazon CloudFront Developer Guide.
|
|
//
|
|
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
|
|
// with awserr.Error's Code and Message methods to get detailed information about
|
|
// the error.
|
|
//
|
|
// See the AWS API reference guide for Amazon CloudFront's
|
|
// API operation CreateCloudFrontOriginAccessIdentity for usage and error information.
|
|
//
|
|
// Returned Error Codes:
|
|
// * ErrCodeOriginAccessIdentityAlreadyExists "OriginAccessIdentityAlreadyExists"
|
|
// If the CallerReference is a value you already sent in a previous request
|
|
// to create an identity but the content of the CloudFrontOriginAccessIdentityConfig
|
|
// is different from the original request, CloudFront returns a CloudFrontOriginAccessIdentityAlreadyExists
|
|
// error.
|
|
//
|
|
// * ErrCodeMissingBody "MissingBody"
|
|
// This operation requires a body. Ensure that the body is present and the Content-Type
|
|
// header is set.
|
|
//
|
|
// * ErrCodeTooManyCloudFrontOriginAccessIdentities "TooManyCloudFrontOriginAccessIdentities"
|
|
// Processing your request would cause you to exceed the maximum number of origin
|
|
// access identities allowed.
|
|
//
|
|
// * ErrCodeInvalidArgument "InvalidArgument"
|
|
// The argument is invalid.
|
|
//
|
|
// * ErrCodeInconsistentQuantities "InconsistentQuantities"
|
|
// The value of Quantity and the size of Items don't match.
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/CreateCloudFrontOriginAccessIdentity
|
|
func (c *CloudFront) CreateCloudFrontOriginAccessIdentity(input *CreateCloudFrontOriginAccessIdentityInput) (*CreateCloudFrontOriginAccessIdentityOutput, error) {
|
|
req, out := c.CreateCloudFrontOriginAccessIdentityRequest(input)
|
|
return out, req.Send()
|
|
}
|
|
|
|
// CreateCloudFrontOriginAccessIdentityWithContext is the same as CreateCloudFrontOriginAccessIdentity with the addition of
|
|
// the ability to pass a context and additional request options.
|
|
//
|
|
// See CreateCloudFrontOriginAccessIdentity for details on how to use this API operation.
|
|
//
|
|
// The context must be non-nil and will be used for request cancellation. If
|
|
// the context is nil a panic will occur. In the future the SDK may create
|
|
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
|
|
// for more information on using Contexts.
|
|
func (c *CloudFront) CreateCloudFrontOriginAccessIdentityWithContext(ctx aws.Context, input *CreateCloudFrontOriginAccessIdentityInput, opts ...request.Option) (*CreateCloudFrontOriginAccessIdentityOutput, error) {
|
|
req, out := c.CreateCloudFrontOriginAccessIdentityRequest(input)
|
|
req.SetContext(ctx)
|
|
req.ApplyOptions(opts...)
|
|
return out, req.Send()
|
|
}
|
|
|
|
const opCreateDistribution = "CreateDistribution2017_03_25"
|
|
|
|
// CreateDistributionRequest generates a "aws/request.Request" representing the
|
|
// client's request for the CreateDistribution operation. The "output" return
|
|
// value will be populated with the request's response once the request complets
|
|
// successfuly.
|
|
//
|
|
// Use "Send" method on the returned Request to send the API call to the service.
|
|
// the "output" return value is not valid until after Send returns without error.
|
|
//
|
|
// See CreateDistribution for more information on using the CreateDistribution
|
|
// API call, and error handling.
|
|
//
|
|
// This method is useful when you want to inject custom logic or configuration
|
|
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
|
|
//
|
|
//
|
|
// // Example sending a request using the CreateDistributionRequest method.
|
|
// req, resp := client.CreateDistributionRequest(params)
|
|
//
|
|
// err := req.Send()
|
|
// if err == nil { // resp is now filled
|
|
// fmt.Println(resp)
|
|
// }
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/CreateDistribution
|
|
func (c *CloudFront) CreateDistributionRequest(input *CreateDistributionInput) (req *request.Request, output *CreateDistributionOutput) {
|
|
op := &request.Operation{
|
|
Name: opCreateDistribution,
|
|
HTTPMethod: "POST",
|
|
HTTPPath: "/2017-03-25/distribution",
|
|
}
|
|
|
|
if input == nil {
|
|
input = &CreateDistributionInput{}
|
|
}
|
|
|
|
output = &CreateDistributionOutput{}
|
|
req = c.newRequest(op, input, output)
|
|
return
|
|
}
|
|
|
|
// CreateDistribution API operation for Amazon CloudFront.
|
|
//
|
|
// Creates a new web distribution. Send a POST request to the /CloudFront API
|
|
// version/distribution/distribution ID resource.
|
|
//
|
|
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
|
|
// with awserr.Error's Code and Message methods to get detailed information about
|
|
// the error.
|
|
//
|
|
// See the AWS API reference guide for Amazon CloudFront's
|
|
// API operation CreateDistribution for usage and error information.
|
|
//
|
|
// Returned Error Codes:
|
|
// * ErrCodeCNAMEAlreadyExists "CNAMEAlreadyExists"
|
|
//
|
|
// * ErrCodeDistributionAlreadyExists "DistributionAlreadyExists"
|
|
// The caller reference you attempted to create the distribution with is associated
|
|
// with another distribution.
|
|
//
|
|
// * ErrCodeInvalidOrigin "InvalidOrigin"
|
|
// The Amazon S3 origin server specified does not refer to a valid Amazon S3
|
|
// bucket.
|
|
//
|
|
// * ErrCodeInvalidOriginAccessIdentity "InvalidOriginAccessIdentity"
|
|
// The origin access identity is not valid or doesn't exist.
|
|
//
|
|
// * ErrCodeAccessDenied "AccessDenied"
|
|
// Access denied.
|
|
//
|
|
// * ErrCodeTooManyTrustedSigners "TooManyTrustedSigners"
|
|
// Your request contains more trusted signers than are allowed per distribution.
|
|
//
|
|
// * ErrCodeTrustedSignerDoesNotExist "TrustedSignerDoesNotExist"
|
|
// One or more of your trusted signers don't exist.
|
|
//
|
|
// * ErrCodeInvalidViewerCertificate "InvalidViewerCertificate"
|
|
//
|
|
// * ErrCodeInvalidMinimumProtocolVersion "InvalidMinimumProtocolVersion"
|
|
//
|
|
// * ErrCodeMissingBody "MissingBody"
|
|
// This operation requires a body. Ensure that the body is present and the Content-Type
|
|
// header is set.
|
|
//
|
|
// * ErrCodeTooManyDistributionCNAMEs "TooManyDistributionCNAMEs"
|
|
// Your request contains more CNAMEs than are allowed per distribution.
|
|
//
|
|
// * ErrCodeTooManyDistributions "TooManyDistributions"
|
|
// Processing your request would cause you to exceed the maximum number of distributions
|
|
// allowed.
|
|
//
|
|
// * ErrCodeInvalidDefaultRootObject "InvalidDefaultRootObject"
|
|
// The default root object file name is too big or contains an invalid character.
|
|
//
|
|
// * ErrCodeInvalidRelativePath "InvalidRelativePath"
|
|
// The relative path is too big, is not URL-encoded, or does not begin with
|
|
// a slash (/).
|
|
//
|
|
// * ErrCodeInvalidErrorCode "InvalidErrorCode"
|
|
//
|
|
// * ErrCodeInvalidResponseCode "InvalidResponseCode"
|
|
//
|
|
// * ErrCodeInvalidArgument "InvalidArgument"
|
|
// The argument is invalid.
|
|
//
|
|
// * ErrCodeInvalidRequiredProtocol "InvalidRequiredProtocol"
|
|
// This operation requires the HTTPS protocol. Ensure that you specify the HTTPS
|
|
// protocol in your request, or omit the RequiredProtocols element from your
|
|
// distribution configuration.
|
|
//
|
|
// * ErrCodeNoSuchOrigin "NoSuchOrigin"
|
|
// No origin exists with the specified Origin Id.
|
|
//
|
|
// * ErrCodeTooManyOrigins "TooManyOrigins"
|
|
// You cannot create more origins for the distribution.
|
|
//
|
|
// * ErrCodeTooManyCacheBehaviors "TooManyCacheBehaviors"
|
|
// You cannot create more cache behaviors for the distribution.
|
|
//
|
|
// * ErrCodeTooManyCookieNamesInWhiteList "TooManyCookieNamesInWhiteList"
|
|
// Your request contains more cookie names in the whitelist than are allowed
|
|
// per cache behavior.
|
|
//
|
|
// * ErrCodeInvalidForwardCookies "InvalidForwardCookies"
|
|
// Your request contains forward cookies option which doesn't match with the
|
|
// expectation for the whitelisted list of cookie names. Either list of cookie
|
|
// names has been specified when not allowed or list of cookie names is missing
|
|
// when expected.
|
|
//
|
|
// * ErrCodeTooManyHeadersInForwardedValues "TooManyHeadersInForwardedValues"
|
|
//
|
|
// * ErrCodeInvalidHeadersForS3Origin "InvalidHeadersForS3Origin"
|
|
//
|
|
// * ErrCodeInconsistentQuantities "InconsistentQuantities"
|
|
// The value of Quantity and the size of Items don't match.
|
|
//
|
|
// * ErrCodeTooManyCertificates "TooManyCertificates"
|
|
// You cannot create anymore custom SSL/TLS certificates.
|
|
//
|
|
// * ErrCodeInvalidLocationCode "InvalidLocationCode"
|
|
//
|
|
// * ErrCodeInvalidGeoRestrictionParameter "InvalidGeoRestrictionParameter"
|
|
//
|
|
// * ErrCodeInvalidProtocolSettings "InvalidProtocolSettings"
|
|
// You cannot specify SSLv3 as the minimum protocol version if you only want
|
|
// to support only clients that support Server Name Indication (SNI).
|
|
//
|
|
// * ErrCodeInvalidTTLOrder "InvalidTTLOrder"
|
|
//
|
|
// * ErrCodeInvalidWebACLId "InvalidWebACLId"
|
|
//
|
|
// * ErrCodeTooManyOriginCustomHeaders "TooManyOriginCustomHeaders"
|
|
//
|
|
// * ErrCodeTooManyQueryStringParameters "TooManyQueryStringParameters"
|
|
//
|
|
// * ErrCodeInvalidQueryStringParameters "InvalidQueryStringParameters"
|
|
//
|
|
// * ErrCodeTooManyDistributionsWithLambdaAssociations "TooManyDistributionsWithLambdaAssociations"
|
|
// Processing your request would cause the maximum number of distributions with
|
|
// Lambda function associations per owner to be exceeded.
|
|
//
|
|
// * ErrCodeTooManyLambdaFunctionAssociations "TooManyLambdaFunctionAssociations"
|
|
// Your request contains more Lambda function associations than are allowed
|
|
// per distribution.
|
|
//
|
|
// * ErrCodeInvalidLambdaFunctionAssociation "InvalidLambdaFunctionAssociation"
|
|
// The specified Lambda function association is invalid.
|
|
//
|
|
// * ErrCodeInvalidOriginReadTimeout "InvalidOriginReadTimeout"
|
|
//
|
|
// * ErrCodeInvalidOriginKeepaliveTimeout "InvalidOriginKeepaliveTimeout"
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/CreateDistribution
|
|
func (c *CloudFront) CreateDistribution(input *CreateDistributionInput) (*CreateDistributionOutput, error) {
|
|
req, out := c.CreateDistributionRequest(input)
|
|
return out, req.Send()
|
|
}
|
|
|
|
// CreateDistributionWithContext is the same as CreateDistribution with the addition of
|
|
// the ability to pass a context and additional request options.
|
|
//
|
|
// See CreateDistribution for details on how to use this API operation.
|
|
//
|
|
// The context must be non-nil and will be used for request cancellation. If
|
|
// the context is nil a panic will occur. In the future the SDK may create
|
|
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
|
|
// for more information on using Contexts.
|
|
func (c *CloudFront) CreateDistributionWithContext(ctx aws.Context, input *CreateDistributionInput, opts ...request.Option) (*CreateDistributionOutput, error) {
|
|
req, out := c.CreateDistributionRequest(input)
|
|
req.SetContext(ctx)
|
|
req.ApplyOptions(opts...)
|
|
return out, req.Send()
|
|
}
|
|
|
|
const opCreateDistributionWithTags = "CreateDistributionWithTags2017_03_25"
|
|
|
|
// CreateDistributionWithTagsRequest generates a "aws/request.Request" representing the
|
|
// client's request for the CreateDistributionWithTags operation. The "output" return
|
|
// value will be populated with the request's response once the request complets
|
|
// successfuly.
|
|
//
|
|
// Use "Send" method on the returned Request to send the API call to the service.
|
|
// the "output" return value is not valid until after Send returns without error.
|
|
//
|
|
// See CreateDistributionWithTags for more information on using the CreateDistributionWithTags
|
|
// API call, and error handling.
|
|
//
|
|
// This method is useful when you want to inject custom logic or configuration
|
|
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
|
|
//
|
|
//
|
|
// // Example sending a request using the CreateDistributionWithTagsRequest method.
|
|
// req, resp := client.CreateDistributionWithTagsRequest(params)
|
|
//
|
|
// err := req.Send()
|
|
// if err == nil { // resp is now filled
|
|
// fmt.Println(resp)
|
|
// }
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/CreateDistributionWithTags
|
|
func (c *CloudFront) CreateDistributionWithTagsRequest(input *CreateDistributionWithTagsInput) (req *request.Request, output *CreateDistributionWithTagsOutput) {
|
|
op := &request.Operation{
|
|
Name: opCreateDistributionWithTags,
|
|
HTTPMethod: "POST",
|
|
HTTPPath: "/2017-03-25/distribution?WithTags",
|
|
}
|
|
|
|
if input == nil {
|
|
input = &CreateDistributionWithTagsInput{}
|
|
}
|
|
|
|
output = &CreateDistributionWithTagsOutput{}
|
|
req = c.newRequest(op, input, output)
|
|
return
|
|
}
|
|
|
|
// CreateDistributionWithTags API operation for Amazon CloudFront.
|
|
//
|
|
// Create a new distribution with tags.
|
|
//
|
|
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
|
|
// with awserr.Error's Code and Message methods to get detailed information about
|
|
// the error.
|
|
//
|
|
// See the AWS API reference guide for Amazon CloudFront's
|
|
// API operation CreateDistributionWithTags for usage and error information.
|
|
//
|
|
// Returned Error Codes:
|
|
// * ErrCodeCNAMEAlreadyExists "CNAMEAlreadyExists"
|
|
//
|
|
// * ErrCodeDistributionAlreadyExists "DistributionAlreadyExists"
|
|
// The caller reference you attempted to create the distribution with is associated
|
|
// with another distribution.
|
|
//
|
|
// * ErrCodeInvalidOrigin "InvalidOrigin"
|
|
// The Amazon S3 origin server specified does not refer to a valid Amazon S3
|
|
// bucket.
|
|
//
|
|
// * ErrCodeInvalidOriginAccessIdentity "InvalidOriginAccessIdentity"
|
|
// The origin access identity is not valid or doesn't exist.
|
|
//
|
|
// * ErrCodeAccessDenied "AccessDenied"
|
|
// Access denied.
|
|
//
|
|
// * ErrCodeTooManyTrustedSigners "TooManyTrustedSigners"
|
|
// Your request contains more trusted signers than are allowed per distribution.
|
|
//
|
|
// * ErrCodeTrustedSignerDoesNotExist "TrustedSignerDoesNotExist"
|
|
// One or more of your trusted signers don't exist.
|
|
//
|
|
// * ErrCodeInvalidViewerCertificate "InvalidViewerCertificate"
|
|
//
|
|
// * ErrCodeInvalidMinimumProtocolVersion "InvalidMinimumProtocolVersion"
|
|
//
|
|
// * ErrCodeMissingBody "MissingBody"
|
|
// This operation requires a body. Ensure that the body is present and the Content-Type
|
|
// header is set.
|
|
//
|
|
// * ErrCodeTooManyDistributionCNAMEs "TooManyDistributionCNAMEs"
|
|
// Your request contains more CNAMEs than are allowed per distribution.
|
|
//
|
|
// * ErrCodeTooManyDistributions "TooManyDistributions"
|
|
// Processing your request would cause you to exceed the maximum number of distributions
|
|
// allowed.
|
|
//
|
|
// * ErrCodeInvalidDefaultRootObject "InvalidDefaultRootObject"
|
|
// The default root object file name is too big or contains an invalid character.
|
|
//
|
|
// * ErrCodeInvalidRelativePath "InvalidRelativePath"
|
|
// The relative path is too big, is not URL-encoded, or does not begin with
|
|
// a slash (/).
|
|
//
|
|
// * ErrCodeInvalidErrorCode "InvalidErrorCode"
|
|
//
|
|
// * ErrCodeInvalidResponseCode "InvalidResponseCode"
|
|
//
|
|
// * ErrCodeInvalidArgument "InvalidArgument"
|
|
// The argument is invalid.
|
|
//
|
|
// * ErrCodeInvalidRequiredProtocol "InvalidRequiredProtocol"
|
|
// This operation requires the HTTPS protocol. Ensure that you specify the HTTPS
|
|
// protocol in your request, or omit the RequiredProtocols element from your
|
|
// distribution configuration.
|
|
//
|
|
// * ErrCodeNoSuchOrigin "NoSuchOrigin"
|
|
// No origin exists with the specified Origin Id.
|
|
//
|
|
// * ErrCodeTooManyOrigins "TooManyOrigins"
|
|
// You cannot create more origins for the distribution.
|
|
//
|
|
// * ErrCodeTooManyCacheBehaviors "TooManyCacheBehaviors"
|
|
// You cannot create more cache behaviors for the distribution.
|
|
//
|
|
// * ErrCodeTooManyCookieNamesInWhiteList "TooManyCookieNamesInWhiteList"
|
|
// Your request contains more cookie names in the whitelist than are allowed
|
|
// per cache behavior.
|
|
//
|
|
// * ErrCodeInvalidForwardCookies "InvalidForwardCookies"
|
|
// Your request contains forward cookies option which doesn't match with the
|
|
// expectation for the whitelisted list of cookie names. Either list of cookie
|
|
// names has been specified when not allowed or list of cookie names is missing
|
|
// when expected.
|
|
//
|
|
// * ErrCodeTooManyHeadersInForwardedValues "TooManyHeadersInForwardedValues"
|
|
//
|
|
// * ErrCodeInvalidHeadersForS3Origin "InvalidHeadersForS3Origin"
|
|
//
|
|
// * ErrCodeInconsistentQuantities "InconsistentQuantities"
|
|
// The value of Quantity and the size of Items don't match.
|
|
//
|
|
// * ErrCodeTooManyCertificates "TooManyCertificates"
|
|
// You cannot create anymore custom SSL/TLS certificates.
|
|
//
|
|
// * ErrCodeInvalidLocationCode "InvalidLocationCode"
|
|
//
|
|
// * ErrCodeInvalidGeoRestrictionParameter "InvalidGeoRestrictionParameter"
|
|
//
|
|
// * ErrCodeInvalidProtocolSettings "InvalidProtocolSettings"
|
|
// You cannot specify SSLv3 as the minimum protocol version if you only want
|
|
// to support only clients that support Server Name Indication (SNI).
|
|
//
|
|
// * ErrCodeInvalidTTLOrder "InvalidTTLOrder"
|
|
//
|
|
// * ErrCodeInvalidWebACLId "InvalidWebACLId"
|
|
//
|
|
// * ErrCodeTooManyOriginCustomHeaders "TooManyOriginCustomHeaders"
|
|
//
|
|
// * ErrCodeInvalidTagging "InvalidTagging"
|
|
//
|
|
// * ErrCodeTooManyQueryStringParameters "TooManyQueryStringParameters"
|
|
//
|
|
// * ErrCodeInvalidQueryStringParameters "InvalidQueryStringParameters"
|
|
//
|
|
// * ErrCodeTooManyDistributionsWithLambdaAssociations "TooManyDistributionsWithLambdaAssociations"
|
|
// Processing your request would cause the maximum number of distributions with
|
|
// Lambda function associations per owner to be exceeded.
|
|
//
|
|
// * ErrCodeTooManyLambdaFunctionAssociations "TooManyLambdaFunctionAssociations"
|
|
// Your request contains more Lambda function associations than are allowed
|
|
// per distribution.
|
|
//
|
|
// * ErrCodeInvalidLambdaFunctionAssociation "InvalidLambdaFunctionAssociation"
|
|
// The specified Lambda function association is invalid.
|
|
//
|
|
// * ErrCodeInvalidOriginReadTimeout "InvalidOriginReadTimeout"
|
|
//
|
|
// * ErrCodeInvalidOriginKeepaliveTimeout "InvalidOriginKeepaliveTimeout"
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/CreateDistributionWithTags
|
|
func (c *CloudFront) CreateDistributionWithTags(input *CreateDistributionWithTagsInput) (*CreateDistributionWithTagsOutput, error) {
|
|
req, out := c.CreateDistributionWithTagsRequest(input)
|
|
return out, req.Send()
|
|
}
|
|
|
|
// CreateDistributionWithTagsWithContext is the same as CreateDistributionWithTags with the addition of
|
|
// the ability to pass a context and additional request options.
|
|
//
|
|
// See CreateDistributionWithTags for details on how to use this API operation.
|
|
//
|
|
// The context must be non-nil and will be used for request cancellation. If
|
|
// the context is nil a panic will occur. In the future the SDK may create
|
|
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
|
|
// for more information on using Contexts.
|
|
func (c *CloudFront) CreateDistributionWithTagsWithContext(ctx aws.Context, input *CreateDistributionWithTagsInput, opts ...request.Option) (*CreateDistributionWithTagsOutput, error) {
|
|
req, out := c.CreateDistributionWithTagsRequest(input)
|
|
req.SetContext(ctx)
|
|
req.ApplyOptions(opts...)
|
|
return out, req.Send()
|
|
}
|
|
|
|
const opCreateInvalidation = "CreateInvalidation2017_03_25"
|
|
|
|
// CreateInvalidationRequest generates a "aws/request.Request" representing the
|
|
// client's request for the CreateInvalidation operation. The "output" return
|
|
// value will be populated with the request's response once the request complets
|
|
// successfuly.
|
|
//
|
|
// Use "Send" method on the returned Request to send the API call to the service.
|
|
// the "output" return value is not valid until after Send returns without error.
|
|
//
|
|
// See CreateInvalidation for more information on using the CreateInvalidation
|
|
// API call, and error handling.
|
|
//
|
|
// This method is useful when you want to inject custom logic or configuration
|
|
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
|
|
//
|
|
//
|
|
// // Example sending a request using the CreateInvalidationRequest method.
|
|
// req, resp := client.CreateInvalidationRequest(params)
|
|
//
|
|
// err := req.Send()
|
|
// if err == nil { // resp is now filled
|
|
// fmt.Println(resp)
|
|
// }
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/CreateInvalidation
|
|
func (c *CloudFront) CreateInvalidationRequest(input *CreateInvalidationInput) (req *request.Request, output *CreateInvalidationOutput) {
|
|
op := &request.Operation{
|
|
Name: opCreateInvalidation,
|
|
HTTPMethod: "POST",
|
|
HTTPPath: "/2017-03-25/distribution/{DistributionId}/invalidation",
|
|
}
|
|
|
|
if input == nil {
|
|
input = &CreateInvalidationInput{}
|
|
}
|
|
|
|
output = &CreateInvalidationOutput{}
|
|
req = c.newRequest(op, input, output)
|
|
return
|
|
}
|
|
|
|
// CreateInvalidation API operation for Amazon CloudFront.
|
|
//
|
|
// Create a new invalidation.
|
|
//
|
|
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
|
|
// with awserr.Error's Code and Message methods to get detailed information about
|
|
// the error.
|
|
//
|
|
// See the AWS API reference guide for Amazon CloudFront's
|
|
// API operation CreateInvalidation for usage and error information.
|
|
//
|
|
// Returned Error Codes:
|
|
// * ErrCodeAccessDenied "AccessDenied"
|
|
// Access denied.
|
|
//
|
|
// * ErrCodeMissingBody "MissingBody"
|
|
// This operation requires a body. Ensure that the body is present and the Content-Type
|
|
// header is set.
|
|
//
|
|
// * ErrCodeInvalidArgument "InvalidArgument"
|
|
// The argument is invalid.
|
|
//
|
|
// * ErrCodeNoSuchDistribution "NoSuchDistribution"
|
|
// The specified distribution does not exist.
|
|
//
|
|
// * ErrCodeBatchTooLarge "BatchTooLarge"
|
|
//
|
|
// * ErrCodeTooManyInvalidationsInProgress "TooManyInvalidationsInProgress"
|
|
// You have exceeded the maximum number of allowable InProgress invalidation
|
|
// batch requests, or invalidation objects.
|
|
//
|
|
// * ErrCodeInconsistentQuantities "InconsistentQuantities"
|
|
// The value of Quantity and the size of Items don't match.
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/CreateInvalidation
|
|
func (c *CloudFront) CreateInvalidation(input *CreateInvalidationInput) (*CreateInvalidationOutput, error) {
|
|
req, out := c.CreateInvalidationRequest(input)
|
|
return out, req.Send()
|
|
}
|
|
|
|
// CreateInvalidationWithContext is the same as CreateInvalidation with the addition of
|
|
// the ability to pass a context and additional request options.
|
|
//
|
|
// See CreateInvalidation for details on how to use this API operation.
|
|
//
|
|
// The context must be non-nil and will be used for request cancellation. If
|
|
// the context is nil a panic will occur. In the future the SDK may create
|
|
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
|
|
// for more information on using Contexts.
|
|
func (c *CloudFront) CreateInvalidationWithContext(ctx aws.Context, input *CreateInvalidationInput, opts ...request.Option) (*CreateInvalidationOutput, error) {
|
|
req, out := c.CreateInvalidationRequest(input)
|
|
req.SetContext(ctx)
|
|
req.ApplyOptions(opts...)
|
|
return out, req.Send()
|
|
}
|
|
|
|
const opCreateStreamingDistribution = "CreateStreamingDistribution2017_03_25"
|
|
|
|
// CreateStreamingDistributionRequest generates a "aws/request.Request" representing the
|
|
// client's request for the CreateStreamingDistribution operation. The "output" return
|
|
// value will be populated with the request's response once the request complets
|
|
// successfuly.
|
|
//
|
|
// Use "Send" method on the returned Request to send the API call to the service.
|
|
// the "output" return value is not valid until after Send returns without error.
|
|
//
|
|
// See CreateStreamingDistribution for more information on using the CreateStreamingDistribution
|
|
// API call, and error handling.
|
|
//
|
|
// This method is useful when you want to inject custom logic or configuration
|
|
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
|
|
//
|
|
//
|
|
// // Example sending a request using the CreateStreamingDistributionRequest method.
|
|
// req, resp := client.CreateStreamingDistributionRequest(params)
|
|
//
|
|
// err := req.Send()
|
|
// if err == nil { // resp is now filled
|
|
// fmt.Println(resp)
|
|
// }
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/CreateStreamingDistribution
|
|
func (c *CloudFront) CreateStreamingDistributionRequest(input *CreateStreamingDistributionInput) (req *request.Request, output *CreateStreamingDistributionOutput) {
|
|
op := &request.Operation{
|
|
Name: opCreateStreamingDistribution,
|
|
HTTPMethod: "POST",
|
|
HTTPPath: "/2017-03-25/streaming-distribution",
|
|
}
|
|
|
|
if input == nil {
|
|
input = &CreateStreamingDistributionInput{}
|
|
}
|
|
|
|
output = &CreateStreamingDistributionOutput{}
|
|
req = c.newRequest(op, input, output)
|
|
return
|
|
}
|
|
|
|
// CreateStreamingDistribution API operation for Amazon CloudFront.
|
|
//
|
|
// Creates a new RMTP 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 web 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
|
|
// (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-rtmp.html)
|
|
// 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.
|
|
//
|
|
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
|
|
// with awserr.Error's Code and Message methods to get detailed information about
|
|
// the error.
|
|
//
|
|
// See the AWS API reference guide for Amazon CloudFront's
|
|
// API operation CreateStreamingDistribution for usage and error information.
|
|
//
|
|
// Returned Error Codes:
|
|
// * ErrCodeCNAMEAlreadyExists "CNAMEAlreadyExists"
|
|
//
|
|
// * ErrCodeStreamingDistributionAlreadyExists "StreamingDistributionAlreadyExists"
|
|
//
|
|
// * ErrCodeInvalidOrigin "InvalidOrigin"
|
|
// The Amazon S3 origin server specified does not refer to a valid Amazon S3
|
|
// bucket.
|
|
//
|
|
// * ErrCodeInvalidOriginAccessIdentity "InvalidOriginAccessIdentity"
|
|
// The origin access identity is not valid or doesn't exist.
|
|
//
|
|
// * ErrCodeAccessDenied "AccessDenied"
|
|
// Access denied.
|
|
//
|
|
// * ErrCodeTooManyTrustedSigners "TooManyTrustedSigners"
|
|
// Your request contains more trusted signers than are allowed per distribution.
|
|
//
|
|
// * ErrCodeTrustedSignerDoesNotExist "TrustedSignerDoesNotExist"
|
|
// One or more of your trusted signers don't exist.
|
|
//
|
|
// * ErrCodeMissingBody "MissingBody"
|
|
// This operation requires a body. Ensure that the body is present and the Content-Type
|
|
// header is set.
|
|
//
|
|
// * ErrCodeTooManyStreamingDistributionCNAMEs "TooManyStreamingDistributionCNAMEs"
|
|
//
|
|
// * ErrCodeTooManyStreamingDistributions "TooManyStreamingDistributions"
|
|
// Processing your request would cause you to exceed the maximum number of streaming
|
|
// distributions allowed.
|
|
//
|
|
// * ErrCodeInvalidArgument "InvalidArgument"
|
|
// The argument is invalid.
|
|
//
|
|
// * ErrCodeInconsistentQuantities "InconsistentQuantities"
|
|
// The value of Quantity and the size of Items don't match.
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/CreateStreamingDistribution
|
|
func (c *CloudFront) CreateStreamingDistribution(input *CreateStreamingDistributionInput) (*CreateStreamingDistributionOutput, error) {
|
|
req, out := c.CreateStreamingDistributionRequest(input)
|
|
return out, req.Send()
|
|
}
|
|
|
|
// CreateStreamingDistributionWithContext is the same as CreateStreamingDistribution with the addition of
|
|
// the ability to pass a context and additional request options.
|
|
//
|
|
// See CreateStreamingDistribution for details on how to use this API operation.
|
|
//
|
|
// The context must be non-nil and will be used for request cancellation. If
|
|
// the context is nil a panic will occur. In the future the SDK may create
|
|
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
|
|
// for more information on using Contexts.
|
|
func (c *CloudFront) CreateStreamingDistributionWithContext(ctx aws.Context, input *CreateStreamingDistributionInput, opts ...request.Option) (*CreateStreamingDistributionOutput, error) {
|
|
req, out := c.CreateStreamingDistributionRequest(input)
|
|
req.SetContext(ctx)
|
|
req.ApplyOptions(opts...)
|
|
return out, req.Send()
|
|
}
|
|
|
|
const opCreateStreamingDistributionWithTags = "CreateStreamingDistributionWithTags2017_03_25"
|
|
|
|
// CreateStreamingDistributionWithTagsRequest generates a "aws/request.Request" representing the
|
|
// client's request for the CreateStreamingDistributionWithTags operation. The "output" return
|
|
// value will be populated with the request's response once the request complets
|
|
// successfuly.
|
|
//
|
|
// Use "Send" method on the returned Request to send the API call to the service.
|
|
// the "output" return value is not valid until after Send returns without error.
|
|
//
|
|
// See CreateStreamingDistributionWithTags for more information on using the CreateStreamingDistributionWithTags
|
|
// API call, and error handling.
|
|
//
|
|
// This method is useful when you want to inject custom logic or configuration
|
|
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
|
|
//
|
|
//
|
|
// // Example sending a request using the CreateStreamingDistributionWithTagsRequest method.
|
|
// req, resp := client.CreateStreamingDistributionWithTagsRequest(params)
|
|
//
|
|
// err := req.Send()
|
|
// if err == nil { // resp is now filled
|
|
// fmt.Println(resp)
|
|
// }
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/CreateStreamingDistributionWithTags
|
|
func (c *CloudFront) CreateStreamingDistributionWithTagsRequest(input *CreateStreamingDistributionWithTagsInput) (req *request.Request, output *CreateStreamingDistributionWithTagsOutput) {
|
|
op := &request.Operation{
|
|
Name: opCreateStreamingDistributionWithTags,
|
|
HTTPMethod: "POST",
|
|
HTTPPath: "/2017-03-25/streaming-distribution?WithTags",
|
|
}
|
|
|
|
if input == nil {
|
|
input = &CreateStreamingDistributionWithTagsInput{}
|
|
}
|
|
|
|
output = &CreateStreamingDistributionWithTagsOutput{}
|
|
req = c.newRequest(op, input, output)
|
|
return
|
|
}
|
|
|
|
// CreateStreamingDistributionWithTags API operation for Amazon CloudFront.
|
|
//
|
|
// Create a new streaming distribution with tags.
|
|
//
|
|
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
|
|
// with awserr.Error's Code and Message methods to get detailed information about
|
|
// the error.
|
|
//
|
|
// See the AWS API reference guide for Amazon CloudFront's
|
|
// API operation CreateStreamingDistributionWithTags for usage and error information.
|
|
//
|
|
// Returned Error Codes:
|
|
// * ErrCodeCNAMEAlreadyExists "CNAMEAlreadyExists"
|
|
//
|
|
// * ErrCodeStreamingDistributionAlreadyExists "StreamingDistributionAlreadyExists"
|
|
//
|
|
// * ErrCodeInvalidOrigin "InvalidOrigin"
|
|
// The Amazon S3 origin server specified does not refer to a valid Amazon S3
|
|
// bucket.
|
|
//
|
|
// * ErrCodeInvalidOriginAccessIdentity "InvalidOriginAccessIdentity"
|
|
// The origin access identity is not valid or doesn't exist.
|
|
//
|
|
// * ErrCodeAccessDenied "AccessDenied"
|
|
// Access denied.
|
|
//
|
|
// * ErrCodeTooManyTrustedSigners "TooManyTrustedSigners"
|
|
// Your request contains more trusted signers than are allowed per distribution.
|
|
//
|
|
// * ErrCodeTrustedSignerDoesNotExist "TrustedSignerDoesNotExist"
|
|
// One or more of your trusted signers don't exist.
|
|
//
|
|
// * ErrCodeMissingBody "MissingBody"
|
|
// This operation requires a body. Ensure that the body is present and the Content-Type
|
|
// header is set.
|
|
//
|
|
// * ErrCodeTooManyStreamingDistributionCNAMEs "TooManyStreamingDistributionCNAMEs"
|
|
//
|
|
// * ErrCodeTooManyStreamingDistributions "TooManyStreamingDistributions"
|
|
// Processing your request would cause you to exceed the maximum number of streaming
|
|
// distributions allowed.
|
|
//
|
|
// * ErrCodeInvalidArgument "InvalidArgument"
|
|
// The argument is invalid.
|
|
//
|
|
// * ErrCodeInconsistentQuantities "InconsistentQuantities"
|
|
// The value of Quantity and the size of Items don't match.
|
|
//
|
|
// * ErrCodeInvalidTagging "InvalidTagging"
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/CreateStreamingDistributionWithTags
|
|
func (c *CloudFront) CreateStreamingDistributionWithTags(input *CreateStreamingDistributionWithTagsInput) (*CreateStreamingDistributionWithTagsOutput, error) {
|
|
req, out := c.CreateStreamingDistributionWithTagsRequest(input)
|
|
return out, req.Send()
|
|
}
|
|
|
|
// CreateStreamingDistributionWithTagsWithContext is the same as CreateStreamingDistributionWithTags with the addition of
|
|
// the ability to pass a context and additional request options.
|
|
//
|
|
// See CreateStreamingDistributionWithTags for details on how to use this API operation.
|
|
//
|
|
// The context must be non-nil and will be used for request cancellation. If
|
|
// the context is nil a panic will occur. In the future the SDK may create
|
|
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
|
|
// for more information on using Contexts.
|
|
func (c *CloudFront) CreateStreamingDistributionWithTagsWithContext(ctx aws.Context, input *CreateStreamingDistributionWithTagsInput, opts ...request.Option) (*CreateStreamingDistributionWithTagsOutput, error) {
|
|
req, out := c.CreateStreamingDistributionWithTagsRequest(input)
|
|
req.SetContext(ctx)
|
|
req.ApplyOptions(opts...)
|
|
return out, req.Send()
|
|
}
|
|
|
|
const opDeleteCloudFrontOriginAccessIdentity = "DeleteCloudFrontOriginAccessIdentity2017_03_25"
|
|
|
|
// DeleteCloudFrontOriginAccessIdentityRequest generates a "aws/request.Request" representing the
|
|
// client's request for the DeleteCloudFrontOriginAccessIdentity operation. The "output" return
|
|
// value will be populated with the request's response once the request complets
|
|
// successfuly.
|
|
//
|
|
// Use "Send" method on the returned Request to send the API call to the service.
|
|
// the "output" return value is not valid until after Send returns without error.
|
|
//
|
|
// See DeleteCloudFrontOriginAccessIdentity for more information on using the DeleteCloudFrontOriginAccessIdentity
|
|
// API call, and error handling.
|
|
//
|
|
// This method is useful when you want to inject custom logic or configuration
|
|
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
|
|
//
|
|
//
|
|
// // Example sending a request using the DeleteCloudFrontOriginAccessIdentityRequest method.
|
|
// req, resp := client.DeleteCloudFrontOriginAccessIdentityRequest(params)
|
|
//
|
|
// err := req.Send()
|
|
// if err == nil { // resp is now filled
|
|
// fmt.Println(resp)
|
|
// }
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/DeleteCloudFrontOriginAccessIdentity
|
|
func (c *CloudFront) DeleteCloudFrontOriginAccessIdentityRequest(input *DeleteCloudFrontOriginAccessIdentityInput) (req *request.Request, output *DeleteCloudFrontOriginAccessIdentityOutput) {
|
|
op := &request.Operation{
|
|
Name: opDeleteCloudFrontOriginAccessIdentity,
|
|
HTTPMethod: "DELETE",
|
|
HTTPPath: "/2017-03-25/origin-access-identity/cloudfront/{Id}",
|
|
}
|
|
|
|
if input == nil {
|
|
input = &DeleteCloudFrontOriginAccessIdentityInput{}
|
|
}
|
|
|
|
output = &DeleteCloudFrontOriginAccessIdentityOutput{}
|
|
req = c.newRequest(op, input, output)
|
|
req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler)
|
|
req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
|
|
return
|
|
}
|
|
|
|
// DeleteCloudFrontOriginAccessIdentity API operation for Amazon CloudFront.
|
|
//
|
|
// Delete an origin access identity.
|
|
//
|
|
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
|
|
// with awserr.Error's Code and Message methods to get detailed information about
|
|
// the error.
|
|
//
|
|
// See the AWS API reference guide for Amazon CloudFront's
|
|
// API operation DeleteCloudFrontOriginAccessIdentity for usage and error information.
|
|
//
|
|
// Returned Error Codes:
|
|
// * ErrCodeAccessDenied "AccessDenied"
|
|
// Access denied.
|
|
//
|
|
// * ErrCodeInvalidIfMatchVersion "InvalidIfMatchVersion"
|
|
// The If-Match version is missing or not valid for the distribution.
|
|
//
|
|
// * ErrCodeNoSuchCloudFrontOriginAccessIdentity "NoSuchCloudFrontOriginAccessIdentity"
|
|
// The specified origin access identity does not exist.
|
|
//
|
|
// * ErrCodePreconditionFailed "PreconditionFailed"
|
|
// The precondition given in one or more of the request-header fields evaluated
|
|
// to false.
|
|
//
|
|
// * ErrCodeOriginAccessIdentityInUse "OriginAccessIdentityInUse"
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/DeleteCloudFrontOriginAccessIdentity
|
|
func (c *CloudFront) DeleteCloudFrontOriginAccessIdentity(input *DeleteCloudFrontOriginAccessIdentityInput) (*DeleteCloudFrontOriginAccessIdentityOutput, error) {
|
|
req, out := c.DeleteCloudFrontOriginAccessIdentityRequest(input)
|
|
return out, req.Send()
|
|
}
|
|
|
|
// DeleteCloudFrontOriginAccessIdentityWithContext is the same as DeleteCloudFrontOriginAccessIdentity with the addition of
|
|
// the ability to pass a context and additional request options.
|
|
//
|
|
// See DeleteCloudFrontOriginAccessIdentity for details on how to use this API operation.
|
|
//
|
|
// The context must be non-nil and will be used for request cancellation. If
|
|
// the context is nil a panic will occur. In the future the SDK may create
|
|
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
|
|
// for more information on using Contexts.
|
|
func (c *CloudFront) DeleteCloudFrontOriginAccessIdentityWithContext(ctx aws.Context, input *DeleteCloudFrontOriginAccessIdentityInput, opts ...request.Option) (*DeleteCloudFrontOriginAccessIdentityOutput, error) {
|
|
req, out := c.DeleteCloudFrontOriginAccessIdentityRequest(input)
|
|
req.SetContext(ctx)
|
|
req.ApplyOptions(opts...)
|
|
return out, req.Send()
|
|
}
|
|
|
|
const opDeleteDistribution = "DeleteDistribution2017_03_25"
|
|
|
|
// DeleteDistributionRequest generates a "aws/request.Request" representing the
|
|
// client's request for the DeleteDistribution operation. The "output" return
|
|
// value will be populated with the request's response once the request complets
|
|
// successfuly.
|
|
//
|
|
// Use "Send" method on the returned Request to send the API call to the service.
|
|
// the "output" return value is not valid until after Send returns without error.
|
|
//
|
|
// See DeleteDistribution for more information on using the DeleteDistribution
|
|
// API call, and error handling.
|
|
//
|
|
// This method is useful when you want to inject custom logic or configuration
|
|
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
|
|
//
|
|
//
|
|
// // Example sending a request using the DeleteDistributionRequest method.
|
|
// req, resp := client.DeleteDistributionRequest(params)
|
|
//
|
|
// err := req.Send()
|
|
// if err == nil { // resp is now filled
|
|
// fmt.Println(resp)
|
|
// }
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/DeleteDistribution
|
|
func (c *CloudFront) DeleteDistributionRequest(input *DeleteDistributionInput) (req *request.Request, output *DeleteDistributionOutput) {
|
|
op := &request.Operation{
|
|
Name: opDeleteDistribution,
|
|
HTTPMethod: "DELETE",
|
|
HTTPPath: "/2017-03-25/distribution/{Id}",
|
|
}
|
|
|
|
if input == nil {
|
|
input = &DeleteDistributionInput{}
|
|
}
|
|
|
|
output = &DeleteDistributionOutput{}
|
|
req = c.newRequest(op, input, output)
|
|
req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler)
|
|
req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
|
|
return
|
|
}
|
|
|
|
// DeleteDistribution API operation for Amazon CloudFront.
|
|
//
|
|
// Delete a distribution.
|
|
//
|
|
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
|
|
// with awserr.Error's Code and Message methods to get detailed information about
|
|
// the error.
|
|
//
|
|
// See the AWS API reference guide for Amazon CloudFront's
|
|
// API operation DeleteDistribution for usage and error information.
|
|
//
|
|
// Returned Error Codes:
|
|
// * ErrCodeAccessDenied "AccessDenied"
|
|
// Access denied.
|
|
//
|
|
// * ErrCodeDistributionNotDisabled "DistributionNotDisabled"
|
|
//
|
|
// * ErrCodeInvalidIfMatchVersion "InvalidIfMatchVersion"
|
|
// The If-Match version is missing or not valid for the distribution.
|
|
//
|
|
// * ErrCodeNoSuchDistribution "NoSuchDistribution"
|
|
// The specified distribution does not exist.
|
|
//
|
|
// * ErrCodePreconditionFailed "PreconditionFailed"
|
|
// The precondition given in one or more of the request-header fields evaluated
|
|
// to false.
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/DeleteDistribution
|
|
func (c *CloudFront) DeleteDistribution(input *DeleteDistributionInput) (*DeleteDistributionOutput, error) {
|
|
req, out := c.DeleteDistributionRequest(input)
|
|
return out, req.Send()
|
|
}
|
|
|
|
// DeleteDistributionWithContext is the same as DeleteDistribution with the addition of
|
|
// the ability to pass a context and additional request options.
|
|
//
|
|
// See DeleteDistribution for details on how to use this API operation.
|
|
//
|
|
// The context must be non-nil and will be used for request cancellation. If
|
|
// the context is nil a panic will occur. In the future the SDK may create
|
|
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
|
|
// for more information on using Contexts.
|
|
func (c *CloudFront) DeleteDistributionWithContext(ctx aws.Context, input *DeleteDistributionInput, opts ...request.Option) (*DeleteDistributionOutput, error) {
|
|
req, out := c.DeleteDistributionRequest(input)
|
|
req.SetContext(ctx)
|
|
req.ApplyOptions(opts...)
|
|
return out, req.Send()
|
|
}
|
|
|
|
const opDeleteServiceLinkedRole = "DeleteServiceLinkedRole2017_03_25"
|
|
|
|
// DeleteServiceLinkedRoleRequest generates a "aws/request.Request" representing the
|
|
// client's request for the DeleteServiceLinkedRole operation. The "output" return
|
|
// value will be populated with the request's response once the request complets
|
|
// successfuly.
|
|
//
|
|
// Use "Send" method on the returned Request to send the API call to the service.
|
|
// the "output" return value is not valid until after Send returns without error.
|
|
//
|
|
// See DeleteServiceLinkedRole for more information on using the DeleteServiceLinkedRole
|
|
// API call, and error handling.
|
|
//
|
|
// This method is useful when you want to inject custom logic or configuration
|
|
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
|
|
//
|
|
//
|
|
// // Example sending a request using the DeleteServiceLinkedRoleRequest method.
|
|
// req, resp := client.DeleteServiceLinkedRoleRequest(params)
|
|
//
|
|
// err := req.Send()
|
|
// if err == nil { // resp is now filled
|
|
// fmt.Println(resp)
|
|
// }
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/DeleteServiceLinkedRole
|
|
func (c *CloudFront) DeleteServiceLinkedRoleRequest(input *DeleteServiceLinkedRoleInput) (req *request.Request, output *DeleteServiceLinkedRoleOutput) {
|
|
op := &request.Operation{
|
|
Name: opDeleteServiceLinkedRole,
|
|
HTTPMethod: "DELETE",
|
|
HTTPPath: "/2017-03-25/service-linked-role/{RoleName}",
|
|
}
|
|
|
|
if input == nil {
|
|
input = &DeleteServiceLinkedRoleInput{}
|
|
}
|
|
|
|
output = &DeleteServiceLinkedRoleOutput{}
|
|
req = c.newRequest(op, input, output)
|
|
req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler)
|
|
req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
|
|
return
|
|
}
|
|
|
|
// DeleteServiceLinkedRole API operation for Amazon CloudFront.
|
|
//
|
|
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
|
|
// with awserr.Error's Code and Message methods to get detailed information about
|
|
// the error.
|
|
//
|
|
// See the AWS API reference guide for Amazon CloudFront's
|
|
// API operation DeleteServiceLinkedRole for usage and error information.
|
|
//
|
|
// Returned Error Codes:
|
|
// * ErrCodeInvalidArgument "InvalidArgument"
|
|
// The argument is invalid.
|
|
//
|
|
// * ErrCodeAccessDenied "AccessDenied"
|
|
// Access denied.
|
|
//
|
|
// * ErrCodeResourceInUse "ResourceInUse"
|
|
//
|
|
// * ErrCodeNoSuchResource "NoSuchResource"
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/DeleteServiceLinkedRole
|
|
func (c *CloudFront) DeleteServiceLinkedRole(input *DeleteServiceLinkedRoleInput) (*DeleteServiceLinkedRoleOutput, error) {
|
|
req, out := c.DeleteServiceLinkedRoleRequest(input)
|
|
return out, req.Send()
|
|
}
|
|
|
|
// DeleteServiceLinkedRoleWithContext is the same as DeleteServiceLinkedRole with the addition of
|
|
// the ability to pass a context and additional request options.
|
|
//
|
|
// See DeleteServiceLinkedRole for details on how to use this API operation.
|
|
//
|
|
// The context must be non-nil and will be used for request cancellation. If
|
|
// the context is nil a panic will occur. In the future the SDK may create
|
|
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
|
|
// for more information on using Contexts.
|
|
func (c *CloudFront) DeleteServiceLinkedRoleWithContext(ctx aws.Context, input *DeleteServiceLinkedRoleInput, opts ...request.Option) (*DeleteServiceLinkedRoleOutput, error) {
|
|
req, out := c.DeleteServiceLinkedRoleRequest(input)
|
|
req.SetContext(ctx)
|
|
req.ApplyOptions(opts...)
|
|
return out, req.Send()
|
|
}
|
|
|
|
const opDeleteStreamingDistribution = "DeleteStreamingDistribution2017_03_25"
|
|
|
|
// DeleteStreamingDistributionRequest generates a "aws/request.Request" representing the
|
|
// client's request for the DeleteStreamingDistribution operation. The "output" return
|
|
// value will be populated with the request's response once the request complets
|
|
// successfuly.
|
|
//
|
|
// Use "Send" method on the returned Request to send the API call to the service.
|
|
// the "output" return value is not valid until after Send returns without error.
|
|
//
|
|
// See DeleteStreamingDistribution for more information on using the DeleteStreamingDistribution
|
|
// API call, and error handling.
|
|
//
|
|
// This method is useful when you want to inject custom logic or configuration
|
|
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
|
|
//
|
|
//
|
|
// // Example sending a request using the DeleteStreamingDistributionRequest method.
|
|
// req, resp := client.DeleteStreamingDistributionRequest(params)
|
|
//
|
|
// err := req.Send()
|
|
// if err == nil { // resp is now filled
|
|
// fmt.Println(resp)
|
|
// }
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/DeleteStreamingDistribution
|
|
func (c *CloudFront) DeleteStreamingDistributionRequest(input *DeleteStreamingDistributionInput) (req *request.Request, output *DeleteStreamingDistributionOutput) {
|
|
op := &request.Operation{
|
|
Name: opDeleteStreamingDistribution,
|
|
HTTPMethod: "DELETE",
|
|
HTTPPath: "/2017-03-25/streaming-distribution/{Id}",
|
|
}
|
|
|
|
if input == nil {
|
|
input = &DeleteStreamingDistributionInput{}
|
|
}
|
|
|
|
output = &DeleteStreamingDistributionOutput{}
|
|
req = c.newRequest(op, input, output)
|
|
req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler)
|
|
req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
|
|
return
|
|
}
|
|
|
|
// DeleteStreamingDistribution API operation for Amazon CloudFront.
|
|
//
|
|
// 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 (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/HowToDeleteDistribution.html)
|
|
// in the Amazon CloudFront Developer Guide.
|
|
//
|
|
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
|
|
// with awserr.Error's Code and Message methods to get detailed information about
|
|
// the error.
|
|
//
|
|
// See the AWS API reference guide for Amazon CloudFront's
|
|
// API operation DeleteStreamingDistribution for usage and error information.
|
|
//
|
|
// Returned Error Codes:
|
|
// * ErrCodeAccessDenied "AccessDenied"
|
|
// Access denied.
|
|
//
|
|
// * ErrCodeStreamingDistributionNotDisabled "StreamingDistributionNotDisabled"
|
|
//
|
|
// * ErrCodeInvalidIfMatchVersion "InvalidIfMatchVersion"
|
|
// The If-Match version is missing or not valid for the distribution.
|
|
//
|
|
// * ErrCodeNoSuchStreamingDistribution "NoSuchStreamingDistribution"
|
|
// The specified streaming distribution does not exist.
|
|
//
|
|
// * ErrCodePreconditionFailed "PreconditionFailed"
|
|
// The precondition given in one or more of the request-header fields evaluated
|
|
// to false.
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/DeleteStreamingDistribution
|
|
func (c *CloudFront) DeleteStreamingDistribution(input *DeleteStreamingDistributionInput) (*DeleteStreamingDistributionOutput, error) {
|
|
req, out := c.DeleteStreamingDistributionRequest(input)
|
|
return out, req.Send()
|
|
}
|
|
|
|
// DeleteStreamingDistributionWithContext is the same as DeleteStreamingDistribution with the addition of
|
|
// the ability to pass a context and additional request options.
|
|
//
|
|
// See DeleteStreamingDistribution for details on how to use this API operation.
|
|
//
|
|
// The context must be non-nil and will be used for request cancellation. If
|
|
// the context is nil a panic will occur. In the future the SDK may create
|
|
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
|
|
// for more information on using Contexts.
|
|
func (c *CloudFront) DeleteStreamingDistributionWithContext(ctx aws.Context, input *DeleteStreamingDistributionInput, opts ...request.Option) (*DeleteStreamingDistributionOutput, error) {
|
|
req, out := c.DeleteStreamingDistributionRequest(input)
|
|
req.SetContext(ctx)
|
|
req.ApplyOptions(opts...)
|
|
return out, req.Send()
|
|
}
|
|
|
|
const opGetCloudFrontOriginAccessIdentity = "GetCloudFrontOriginAccessIdentity2017_03_25"
|
|
|
|
// GetCloudFrontOriginAccessIdentityRequest generates a "aws/request.Request" representing the
|
|
// client's request for the GetCloudFrontOriginAccessIdentity operation. The "output" return
|
|
// value will be populated with the request's response once the request complets
|
|
// successfuly.
|
|
//
|
|
// Use "Send" method on the returned Request to send the API call to the service.
|
|
// the "output" return value is not valid until after Send returns without error.
|
|
//
|
|
// See GetCloudFrontOriginAccessIdentity for more information on using the GetCloudFrontOriginAccessIdentity
|
|
// API call, and error handling.
|
|
//
|
|
// This method is useful when you want to inject custom logic or configuration
|
|
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
|
|
//
|
|
//
|
|
// // Example sending a request using the GetCloudFrontOriginAccessIdentityRequest method.
|
|
// req, resp := client.GetCloudFrontOriginAccessIdentityRequest(params)
|
|
//
|
|
// err := req.Send()
|
|
// if err == nil { // resp is now filled
|
|
// fmt.Println(resp)
|
|
// }
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/GetCloudFrontOriginAccessIdentity
|
|
func (c *CloudFront) GetCloudFrontOriginAccessIdentityRequest(input *GetCloudFrontOriginAccessIdentityInput) (req *request.Request, output *GetCloudFrontOriginAccessIdentityOutput) {
|
|
op := &request.Operation{
|
|
Name: opGetCloudFrontOriginAccessIdentity,
|
|
HTTPMethod: "GET",
|
|
HTTPPath: "/2017-03-25/origin-access-identity/cloudfront/{Id}",
|
|
}
|
|
|
|
if input == nil {
|
|
input = &GetCloudFrontOriginAccessIdentityInput{}
|
|
}
|
|
|
|
output = &GetCloudFrontOriginAccessIdentityOutput{}
|
|
req = c.newRequest(op, input, output)
|
|
return
|
|
}
|
|
|
|
// GetCloudFrontOriginAccessIdentity API operation for Amazon CloudFront.
|
|
//
|
|
// Get the information about an origin access identity.
|
|
//
|
|
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
|
|
// with awserr.Error's Code and Message methods to get detailed information about
|
|
// the error.
|
|
//
|
|
// See the AWS API reference guide for Amazon CloudFront's
|
|
// API operation GetCloudFrontOriginAccessIdentity for usage and error information.
|
|
//
|
|
// Returned Error Codes:
|
|
// * ErrCodeNoSuchCloudFrontOriginAccessIdentity "NoSuchCloudFrontOriginAccessIdentity"
|
|
// The specified origin access identity does not exist.
|
|
//
|
|
// * ErrCodeAccessDenied "AccessDenied"
|
|
// Access denied.
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/GetCloudFrontOriginAccessIdentity
|
|
func (c *CloudFront) GetCloudFrontOriginAccessIdentity(input *GetCloudFrontOriginAccessIdentityInput) (*GetCloudFrontOriginAccessIdentityOutput, error) {
|
|
req, out := c.GetCloudFrontOriginAccessIdentityRequest(input)
|
|
return out, req.Send()
|
|
}
|
|
|
|
// GetCloudFrontOriginAccessIdentityWithContext is the same as GetCloudFrontOriginAccessIdentity with the addition of
|
|
// the ability to pass a context and additional request options.
|
|
//
|
|
// See GetCloudFrontOriginAccessIdentity for details on how to use this API operation.
|
|
//
|
|
// The context must be non-nil and will be used for request cancellation. If
|
|
// the context is nil a panic will occur. In the future the SDK may create
|
|
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
|
|
// for more information on using Contexts.
|
|
func (c *CloudFront) GetCloudFrontOriginAccessIdentityWithContext(ctx aws.Context, input *GetCloudFrontOriginAccessIdentityInput, opts ...request.Option) (*GetCloudFrontOriginAccessIdentityOutput, error) {
|
|
req, out := c.GetCloudFrontOriginAccessIdentityRequest(input)
|
|
req.SetContext(ctx)
|
|
req.ApplyOptions(opts...)
|
|
return out, req.Send()
|
|
}
|
|
|
|
const opGetCloudFrontOriginAccessIdentityConfig = "GetCloudFrontOriginAccessIdentityConfig2017_03_25"
|
|
|
|
// GetCloudFrontOriginAccessIdentityConfigRequest generates a "aws/request.Request" representing the
|
|
// client's request for the GetCloudFrontOriginAccessIdentityConfig operation. The "output" return
|
|
// value will be populated with the request's response once the request complets
|
|
// successfuly.
|
|
//
|
|
// Use "Send" method on the returned Request to send the API call to the service.
|
|
// the "output" return value is not valid until after Send returns without error.
|
|
//
|
|
// See GetCloudFrontOriginAccessIdentityConfig for more information on using the GetCloudFrontOriginAccessIdentityConfig
|
|
// API call, and error handling.
|
|
//
|
|
// This method is useful when you want to inject custom logic or configuration
|
|
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
|
|
//
|
|
//
|
|
// // Example sending a request using the GetCloudFrontOriginAccessIdentityConfigRequest method.
|
|
// req, resp := client.GetCloudFrontOriginAccessIdentityConfigRequest(params)
|
|
//
|
|
// err := req.Send()
|
|
// if err == nil { // resp is now filled
|
|
// fmt.Println(resp)
|
|
// }
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/GetCloudFrontOriginAccessIdentityConfig
|
|
func (c *CloudFront) GetCloudFrontOriginAccessIdentityConfigRequest(input *GetCloudFrontOriginAccessIdentityConfigInput) (req *request.Request, output *GetCloudFrontOriginAccessIdentityConfigOutput) {
|
|
op := &request.Operation{
|
|
Name: opGetCloudFrontOriginAccessIdentityConfig,
|
|
HTTPMethod: "GET",
|
|
HTTPPath: "/2017-03-25/origin-access-identity/cloudfront/{Id}/config",
|
|
}
|
|
|
|
if input == nil {
|
|
input = &GetCloudFrontOriginAccessIdentityConfigInput{}
|
|
}
|
|
|
|
output = &GetCloudFrontOriginAccessIdentityConfigOutput{}
|
|
req = c.newRequest(op, input, output)
|
|
return
|
|
}
|
|
|
|
// GetCloudFrontOriginAccessIdentityConfig API operation for Amazon CloudFront.
|
|
//
|
|
// Get the configuration information about an origin access identity.
|
|
//
|
|
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
|
|
// with awserr.Error's Code and Message methods to get detailed information about
|
|
// the error.
|
|
//
|
|
// See the AWS API reference guide for Amazon CloudFront's
|
|
// API operation GetCloudFrontOriginAccessIdentityConfig for usage and error information.
|
|
//
|
|
// Returned Error Codes:
|
|
// * ErrCodeNoSuchCloudFrontOriginAccessIdentity "NoSuchCloudFrontOriginAccessIdentity"
|
|
// The specified origin access identity does not exist.
|
|
//
|
|
// * ErrCodeAccessDenied "AccessDenied"
|
|
// Access denied.
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/GetCloudFrontOriginAccessIdentityConfig
|
|
func (c *CloudFront) GetCloudFrontOriginAccessIdentityConfig(input *GetCloudFrontOriginAccessIdentityConfigInput) (*GetCloudFrontOriginAccessIdentityConfigOutput, error) {
|
|
req, out := c.GetCloudFrontOriginAccessIdentityConfigRequest(input)
|
|
return out, req.Send()
|
|
}
|
|
|
|
// GetCloudFrontOriginAccessIdentityConfigWithContext is the same as GetCloudFrontOriginAccessIdentityConfig with the addition of
|
|
// the ability to pass a context and additional request options.
|
|
//
|
|
// See GetCloudFrontOriginAccessIdentityConfig for details on how to use this API operation.
|
|
//
|
|
// The context must be non-nil and will be used for request cancellation. If
|
|
// the context is nil a panic will occur. In the future the SDK may create
|
|
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
|
|
// for more information on using Contexts.
|
|
func (c *CloudFront) GetCloudFrontOriginAccessIdentityConfigWithContext(ctx aws.Context, input *GetCloudFrontOriginAccessIdentityConfigInput, opts ...request.Option) (*GetCloudFrontOriginAccessIdentityConfigOutput, error) {
|
|
req, out := c.GetCloudFrontOriginAccessIdentityConfigRequest(input)
|
|
req.SetContext(ctx)
|
|
req.ApplyOptions(opts...)
|
|
return out, req.Send()
|
|
}
|
|
|
|
const opGetDistribution = "GetDistribution2017_03_25"
|
|
|
|
// GetDistributionRequest generates a "aws/request.Request" representing the
|
|
// client's request for the GetDistribution operation. The "output" return
|
|
// value will be populated with the request's response once the request complets
|
|
// successfuly.
|
|
//
|
|
// Use "Send" method on the returned Request to send the API call to the service.
|
|
// the "output" return value is not valid until after Send returns without error.
|
|
//
|
|
// See GetDistribution for more information on using the GetDistribution
|
|
// API call, and error handling.
|
|
//
|
|
// This method is useful when you want to inject custom logic or configuration
|
|
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
|
|
//
|
|
//
|
|
// // Example sending a request using the GetDistributionRequest method.
|
|
// req, resp := client.GetDistributionRequest(params)
|
|
//
|
|
// err := req.Send()
|
|
// if err == nil { // resp is now filled
|
|
// fmt.Println(resp)
|
|
// }
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/GetDistribution
|
|
func (c *CloudFront) GetDistributionRequest(input *GetDistributionInput) (req *request.Request, output *GetDistributionOutput) {
|
|
op := &request.Operation{
|
|
Name: opGetDistribution,
|
|
HTTPMethod: "GET",
|
|
HTTPPath: "/2017-03-25/distribution/{Id}",
|
|
}
|
|
|
|
if input == nil {
|
|
input = &GetDistributionInput{}
|
|
}
|
|
|
|
output = &GetDistributionOutput{}
|
|
req = c.newRequest(op, input, output)
|
|
return
|
|
}
|
|
|
|
// GetDistribution API operation for Amazon CloudFront.
|
|
//
|
|
// Get the information about a distribution.
|
|
//
|
|
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
|
|
// with awserr.Error's Code and Message methods to get detailed information about
|
|
// the error.
|
|
//
|
|
// See the AWS API reference guide for Amazon CloudFront's
|
|
// API operation GetDistribution for usage and error information.
|
|
//
|
|
// Returned Error Codes:
|
|
// * ErrCodeNoSuchDistribution "NoSuchDistribution"
|
|
// The specified distribution does not exist.
|
|
//
|
|
// * ErrCodeAccessDenied "AccessDenied"
|
|
// Access denied.
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/GetDistribution
|
|
func (c *CloudFront) GetDistribution(input *GetDistributionInput) (*GetDistributionOutput, error) {
|
|
req, out := c.GetDistributionRequest(input)
|
|
return out, req.Send()
|
|
}
|
|
|
|
// GetDistributionWithContext is the same as GetDistribution with the addition of
|
|
// the ability to pass a context and additional request options.
|
|
//
|
|
// See GetDistribution for details on how to use this API operation.
|
|
//
|
|
// The context must be non-nil and will be used for request cancellation. If
|
|
// the context is nil a panic will occur. In the future the SDK may create
|
|
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
|
|
// for more information on using Contexts.
|
|
func (c *CloudFront) GetDistributionWithContext(ctx aws.Context, input *GetDistributionInput, opts ...request.Option) (*GetDistributionOutput, error) {
|
|
req, out := c.GetDistributionRequest(input)
|
|
req.SetContext(ctx)
|
|
req.ApplyOptions(opts...)
|
|
return out, req.Send()
|
|
}
|
|
|
|
const opGetDistributionConfig = "GetDistributionConfig2017_03_25"
|
|
|
|
// GetDistributionConfigRequest generates a "aws/request.Request" representing the
|
|
// client's request for the GetDistributionConfig operation. The "output" return
|
|
// value will be populated with the request's response once the request complets
|
|
// successfuly.
|
|
//
|
|
// Use "Send" method on the returned Request to send the API call to the service.
|
|
// the "output" return value is not valid until after Send returns without error.
|
|
//
|
|
// See GetDistributionConfig for more information on using the GetDistributionConfig
|
|
// API call, and error handling.
|
|
//
|
|
// This method is useful when you want to inject custom logic or configuration
|
|
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
|
|
//
|
|
//
|
|
// // Example sending a request using the GetDistributionConfigRequest method.
|
|
// req, resp := client.GetDistributionConfigRequest(params)
|
|
//
|
|
// err := req.Send()
|
|
// if err == nil { // resp is now filled
|
|
// fmt.Println(resp)
|
|
// }
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/GetDistributionConfig
|
|
func (c *CloudFront) GetDistributionConfigRequest(input *GetDistributionConfigInput) (req *request.Request, output *GetDistributionConfigOutput) {
|
|
op := &request.Operation{
|
|
Name: opGetDistributionConfig,
|
|
HTTPMethod: "GET",
|
|
HTTPPath: "/2017-03-25/distribution/{Id}/config",
|
|
}
|
|
|
|
if input == nil {
|
|
input = &GetDistributionConfigInput{}
|
|
}
|
|
|
|
output = &GetDistributionConfigOutput{}
|
|
req = c.newRequest(op, input, output)
|
|
return
|
|
}
|
|
|
|
// GetDistributionConfig API operation for Amazon CloudFront.
|
|
//
|
|
// Get the configuration information about a distribution.
|
|
//
|
|
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
|
|
// with awserr.Error's Code and Message methods to get detailed information about
|
|
// the error.
|
|
//
|
|
// See the AWS API reference guide for Amazon CloudFront's
|
|
// API operation GetDistributionConfig for usage and error information.
|
|
//
|
|
// Returned Error Codes:
|
|
// * ErrCodeNoSuchDistribution "NoSuchDistribution"
|
|
// The specified distribution does not exist.
|
|
//
|
|
// * ErrCodeAccessDenied "AccessDenied"
|
|
// Access denied.
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/GetDistributionConfig
|
|
func (c *CloudFront) GetDistributionConfig(input *GetDistributionConfigInput) (*GetDistributionConfigOutput, error) {
|
|
req, out := c.GetDistributionConfigRequest(input)
|
|
return out, req.Send()
|
|
}
|
|
|
|
// GetDistributionConfigWithContext is the same as GetDistributionConfig with the addition of
|
|
// the ability to pass a context and additional request options.
|
|
//
|
|
// See GetDistributionConfig for details on how to use this API operation.
|
|
//
|
|
// The context must be non-nil and will be used for request cancellation. If
|
|
// the context is nil a panic will occur. In the future the SDK may create
|
|
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
|
|
// for more information on using Contexts.
|
|
func (c *CloudFront) GetDistributionConfigWithContext(ctx aws.Context, input *GetDistributionConfigInput, opts ...request.Option) (*GetDistributionConfigOutput, error) {
|
|
req, out := c.GetDistributionConfigRequest(input)
|
|
req.SetContext(ctx)
|
|
req.ApplyOptions(opts...)
|
|
return out, req.Send()
|
|
}
|
|
|
|
const opGetInvalidation = "GetInvalidation2017_03_25"
|
|
|
|
// GetInvalidationRequest generates a "aws/request.Request" representing the
|
|
// client's request for the GetInvalidation operation. The "output" return
|
|
// value will be populated with the request's response once the request complets
|
|
// successfuly.
|
|
//
|
|
// Use "Send" method on the returned Request to send the API call to the service.
|
|
// the "output" return value is not valid until after Send returns without error.
|
|
//
|
|
// See GetInvalidation for more information on using the GetInvalidation
|
|
// API call, and error handling.
|
|
//
|
|
// This method is useful when you want to inject custom logic or configuration
|
|
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
|
|
//
|
|
//
|
|
// // Example sending a request using the GetInvalidationRequest method.
|
|
// req, resp := client.GetInvalidationRequest(params)
|
|
//
|
|
// err := req.Send()
|
|
// if err == nil { // resp is now filled
|
|
// fmt.Println(resp)
|
|
// }
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/GetInvalidation
|
|
func (c *CloudFront) GetInvalidationRequest(input *GetInvalidationInput) (req *request.Request, output *GetInvalidationOutput) {
|
|
op := &request.Operation{
|
|
Name: opGetInvalidation,
|
|
HTTPMethod: "GET",
|
|
HTTPPath: "/2017-03-25/distribution/{DistributionId}/invalidation/{Id}",
|
|
}
|
|
|
|
if input == nil {
|
|
input = &GetInvalidationInput{}
|
|
}
|
|
|
|
output = &GetInvalidationOutput{}
|
|
req = c.newRequest(op, input, output)
|
|
return
|
|
}
|
|
|
|
// GetInvalidation API operation for Amazon CloudFront.
|
|
//
|
|
// Get the information about an invalidation.
|
|
//
|
|
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
|
|
// with awserr.Error's Code and Message methods to get detailed information about
|
|
// the error.
|
|
//
|
|
// See the AWS API reference guide for Amazon CloudFront's
|
|
// API operation GetInvalidation for usage and error information.
|
|
//
|
|
// Returned Error Codes:
|
|
// * ErrCodeNoSuchInvalidation "NoSuchInvalidation"
|
|
// The specified invalidation does not exist.
|
|
//
|
|
// * ErrCodeNoSuchDistribution "NoSuchDistribution"
|
|
// The specified distribution does not exist.
|
|
//
|
|
// * ErrCodeAccessDenied "AccessDenied"
|
|
// Access denied.
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/GetInvalidation
|
|
func (c *CloudFront) GetInvalidation(input *GetInvalidationInput) (*GetInvalidationOutput, error) {
|
|
req, out := c.GetInvalidationRequest(input)
|
|
return out, req.Send()
|
|
}
|
|
|
|
// GetInvalidationWithContext is the same as GetInvalidation with the addition of
|
|
// the ability to pass a context and additional request options.
|
|
//
|
|
// See GetInvalidation for details on how to use this API operation.
|
|
//
|
|
// The context must be non-nil and will be used for request cancellation. If
|
|
// the context is nil a panic will occur. In the future the SDK may create
|
|
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
|
|
// for more information on using Contexts.
|
|
func (c *CloudFront) GetInvalidationWithContext(ctx aws.Context, input *GetInvalidationInput, opts ...request.Option) (*GetInvalidationOutput, error) {
|
|
req, out := c.GetInvalidationRequest(input)
|
|
req.SetContext(ctx)
|
|
req.ApplyOptions(opts...)
|
|
return out, req.Send()
|
|
}
|
|
|
|
const opGetStreamingDistribution = "GetStreamingDistribution2017_03_25"
|
|
|
|
// GetStreamingDistributionRequest generates a "aws/request.Request" representing the
|
|
// client's request for the GetStreamingDistribution operation. The "output" return
|
|
// value will be populated with the request's response once the request complets
|
|
// successfuly.
|
|
//
|
|
// Use "Send" method on the returned Request to send the API call to the service.
|
|
// the "output" return value is not valid until after Send returns without error.
|
|
//
|
|
// See GetStreamingDistribution for more information on using the GetStreamingDistribution
|
|
// API call, and error handling.
|
|
//
|
|
// This method is useful when you want to inject custom logic or configuration
|
|
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
|
|
//
|
|
//
|
|
// // Example sending a request using the GetStreamingDistributionRequest method.
|
|
// req, resp := client.GetStreamingDistributionRequest(params)
|
|
//
|
|
// err := req.Send()
|
|
// if err == nil { // resp is now filled
|
|
// fmt.Println(resp)
|
|
// }
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/GetStreamingDistribution
|
|
func (c *CloudFront) GetStreamingDistributionRequest(input *GetStreamingDistributionInput) (req *request.Request, output *GetStreamingDistributionOutput) {
|
|
op := &request.Operation{
|
|
Name: opGetStreamingDistribution,
|
|
HTTPMethod: "GET",
|
|
HTTPPath: "/2017-03-25/streaming-distribution/{Id}",
|
|
}
|
|
|
|
if input == nil {
|
|
input = &GetStreamingDistributionInput{}
|
|
}
|
|
|
|
output = &GetStreamingDistributionOutput{}
|
|
req = c.newRequest(op, input, output)
|
|
return
|
|
}
|
|
|
|
// GetStreamingDistribution API operation for Amazon CloudFront.
|
|
//
|
|
// Gets information about a specified RTMP distribution, including the distribution
|
|
// configuration.
|
|
//
|
|
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
|
|
// with awserr.Error's Code and Message methods to get detailed information about
|
|
// the error.
|
|
//
|
|
// See the AWS API reference guide for Amazon CloudFront's
|
|
// API operation GetStreamingDistribution for usage and error information.
|
|
//
|
|
// Returned Error Codes:
|
|
// * ErrCodeNoSuchStreamingDistribution "NoSuchStreamingDistribution"
|
|
// The specified streaming distribution does not exist.
|
|
//
|
|
// * ErrCodeAccessDenied "AccessDenied"
|
|
// Access denied.
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/GetStreamingDistribution
|
|
func (c *CloudFront) GetStreamingDistribution(input *GetStreamingDistributionInput) (*GetStreamingDistributionOutput, error) {
|
|
req, out := c.GetStreamingDistributionRequest(input)
|
|
return out, req.Send()
|
|
}
|
|
|
|
// GetStreamingDistributionWithContext is the same as GetStreamingDistribution with the addition of
|
|
// the ability to pass a context and additional request options.
|
|
//
|
|
// See GetStreamingDistribution for details on how to use this API operation.
|
|
//
|
|
// The context must be non-nil and will be used for request cancellation. If
|
|
// the context is nil a panic will occur. In the future the SDK may create
|
|
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
|
|
// for more information on using Contexts.
|
|
func (c *CloudFront) GetStreamingDistributionWithContext(ctx aws.Context, input *GetStreamingDistributionInput, opts ...request.Option) (*GetStreamingDistributionOutput, error) {
|
|
req, out := c.GetStreamingDistributionRequest(input)
|
|
req.SetContext(ctx)
|
|
req.ApplyOptions(opts...)
|
|
return out, req.Send()
|
|
}
|
|
|
|
const opGetStreamingDistributionConfig = "GetStreamingDistributionConfig2017_03_25"
|
|
|
|
// GetStreamingDistributionConfigRequest generates a "aws/request.Request" representing the
|
|
// client's request for the GetStreamingDistributionConfig operation. The "output" return
|
|
// value will be populated with the request's response once the request complets
|
|
// successfuly.
|
|
//
|
|
// Use "Send" method on the returned Request to send the API call to the service.
|
|
// the "output" return value is not valid until after Send returns without error.
|
|
//
|
|
// See GetStreamingDistributionConfig for more information on using the GetStreamingDistributionConfig
|
|
// API call, and error handling.
|
|
//
|
|
// This method is useful when you want to inject custom logic or configuration
|
|
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
|
|
//
|
|
//
|
|
// // Example sending a request using the GetStreamingDistributionConfigRequest method.
|
|
// req, resp := client.GetStreamingDistributionConfigRequest(params)
|
|
//
|
|
// err := req.Send()
|
|
// if err == nil { // resp is now filled
|
|
// fmt.Println(resp)
|
|
// }
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/GetStreamingDistributionConfig
|
|
func (c *CloudFront) GetStreamingDistributionConfigRequest(input *GetStreamingDistributionConfigInput) (req *request.Request, output *GetStreamingDistributionConfigOutput) {
|
|
op := &request.Operation{
|
|
Name: opGetStreamingDistributionConfig,
|
|
HTTPMethod: "GET",
|
|
HTTPPath: "/2017-03-25/streaming-distribution/{Id}/config",
|
|
}
|
|
|
|
if input == nil {
|
|
input = &GetStreamingDistributionConfigInput{}
|
|
}
|
|
|
|
output = &GetStreamingDistributionConfigOutput{}
|
|
req = c.newRequest(op, input, output)
|
|
return
|
|
}
|
|
|
|
// GetStreamingDistributionConfig API operation for Amazon CloudFront.
|
|
//
|
|
// Get the configuration information about a streaming distribution.
|
|
//
|
|
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
|
|
// with awserr.Error's Code and Message methods to get detailed information about
|
|
// the error.
|
|
//
|
|
// See the AWS API reference guide for Amazon CloudFront's
|
|
// API operation GetStreamingDistributionConfig for usage and error information.
|
|
//
|
|
// Returned Error Codes:
|
|
// * ErrCodeNoSuchStreamingDistribution "NoSuchStreamingDistribution"
|
|
// The specified streaming distribution does not exist.
|
|
//
|
|
// * ErrCodeAccessDenied "AccessDenied"
|
|
// Access denied.
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/GetStreamingDistributionConfig
|
|
func (c *CloudFront) GetStreamingDistributionConfig(input *GetStreamingDistributionConfigInput) (*GetStreamingDistributionConfigOutput, error) {
|
|
req, out := c.GetStreamingDistributionConfigRequest(input)
|
|
return out, req.Send()
|
|
}
|
|
|
|
// GetStreamingDistributionConfigWithContext is the same as GetStreamingDistributionConfig with the addition of
|
|
// the ability to pass a context and additional request options.
|
|
//
|
|
// See GetStreamingDistributionConfig for details on how to use this API operation.
|
|
//
|
|
// The context must be non-nil and will be used for request cancellation. If
|
|
// the context is nil a panic will occur. In the future the SDK may create
|
|
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
|
|
// for more information on using Contexts.
|
|
func (c *CloudFront) GetStreamingDistributionConfigWithContext(ctx aws.Context, input *GetStreamingDistributionConfigInput, opts ...request.Option) (*GetStreamingDistributionConfigOutput, error) {
|
|
req, out := c.GetStreamingDistributionConfigRequest(input)
|
|
req.SetContext(ctx)
|
|
req.ApplyOptions(opts...)
|
|
return out, req.Send()
|
|
}
|
|
|
|
const opListCloudFrontOriginAccessIdentities = "ListCloudFrontOriginAccessIdentities2017_03_25"
|
|
|
|
// ListCloudFrontOriginAccessIdentitiesRequest generates a "aws/request.Request" representing the
|
|
// client's request for the ListCloudFrontOriginAccessIdentities operation. The "output" return
|
|
// value will be populated with the request's response once the request complets
|
|
// successfuly.
|
|
//
|
|
// Use "Send" method on the returned Request to send the API call to the service.
|
|
// the "output" return value is not valid until after Send returns without error.
|
|
//
|
|
// See ListCloudFrontOriginAccessIdentities for more information on using the ListCloudFrontOriginAccessIdentities
|
|
// API call, and error handling.
|
|
//
|
|
// This method is useful when you want to inject custom logic or configuration
|
|
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
|
|
//
|
|
//
|
|
// // Example sending a request using the ListCloudFrontOriginAccessIdentitiesRequest method.
|
|
// req, resp := client.ListCloudFrontOriginAccessIdentitiesRequest(params)
|
|
//
|
|
// err := req.Send()
|
|
// if err == nil { // resp is now filled
|
|
// fmt.Println(resp)
|
|
// }
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/ListCloudFrontOriginAccessIdentities
|
|
func (c *CloudFront) ListCloudFrontOriginAccessIdentitiesRequest(input *ListCloudFrontOriginAccessIdentitiesInput) (req *request.Request, output *ListCloudFrontOriginAccessIdentitiesOutput) {
|
|
op := &request.Operation{
|
|
Name: opListCloudFrontOriginAccessIdentities,
|
|
HTTPMethod: "GET",
|
|
HTTPPath: "/2017-03-25/origin-access-identity/cloudfront",
|
|
Paginator: &request.Paginator{
|
|
InputTokens: []string{"Marker"},
|
|
OutputTokens: []string{"CloudFrontOriginAccessIdentityList.NextMarker"},
|
|
LimitToken: "MaxItems",
|
|
TruncationToken: "CloudFrontOriginAccessIdentityList.IsTruncated",
|
|
},
|
|
}
|
|
|
|
if input == nil {
|
|
input = &ListCloudFrontOriginAccessIdentitiesInput{}
|
|
}
|
|
|
|
output = &ListCloudFrontOriginAccessIdentitiesOutput{}
|
|
req = c.newRequest(op, input, output)
|
|
return
|
|
}
|
|
|
|
// ListCloudFrontOriginAccessIdentities API operation for Amazon CloudFront.
|
|
//
|
|
// Lists origin access identities.
|
|
//
|
|
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
|
|
// with awserr.Error's Code and Message methods to get detailed information about
|
|
// the error.
|
|
//
|
|
// See the AWS API reference guide for Amazon CloudFront's
|
|
// API operation ListCloudFrontOriginAccessIdentities for usage and error information.
|
|
//
|
|
// Returned Error Codes:
|
|
// * ErrCodeInvalidArgument "InvalidArgument"
|
|
// The argument is invalid.
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/ListCloudFrontOriginAccessIdentities
|
|
func (c *CloudFront) ListCloudFrontOriginAccessIdentities(input *ListCloudFrontOriginAccessIdentitiesInput) (*ListCloudFrontOriginAccessIdentitiesOutput, error) {
|
|
req, out := c.ListCloudFrontOriginAccessIdentitiesRequest(input)
|
|
return out, req.Send()
|
|
}
|
|
|
|
// ListCloudFrontOriginAccessIdentitiesWithContext is the same as ListCloudFrontOriginAccessIdentities with the addition of
|
|
// the ability to pass a context and additional request options.
|
|
//
|
|
// See ListCloudFrontOriginAccessIdentities for details on how to use this API operation.
|
|
//
|
|
// The context must be non-nil and will be used for request cancellation. If
|
|
// the context is nil a panic will occur. In the future the SDK may create
|
|
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
|
|
// for more information on using Contexts.
|
|
func (c *CloudFront) ListCloudFrontOriginAccessIdentitiesWithContext(ctx aws.Context, input *ListCloudFrontOriginAccessIdentitiesInput, opts ...request.Option) (*ListCloudFrontOriginAccessIdentitiesOutput, error) {
|
|
req, out := c.ListCloudFrontOriginAccessIdentitiesRequest(input)
|
|
req.SetContext(ctx)
|
|
req.ApplyOptions(opts...)
|
|
return out, req.Send()
|
|
}
|
|
|
|
// ListCloudFrontOriginAccessIdentitiesPages iterates over the pages of a ListCloudFrontOriginAccessIdentities operation,
|
|
// calling the "fn" function with the response data for each page. To stop
|
|
// iterating, return false from the fn function.
|
|
//
|
|
// See ListCloudFrontOriginAccessIdentities method for more information on how to use this operation.
|
|
//
|
|
// Note: This operation can generate multiple requests to a service.
|
|
//
|
|
// // Example iterating over at most 3 pages of a ListCloudFrontOriginAccessIdentities operation.
|
|
// pageNum := 0
|
|
// err := client.ListCloudFrontOriginAccessIdentitiesPages(params,
|
|
// func(page *ListCloudFrontOriginAccessIdentitiesOutput, lastPage bool) bool {
|
|
// pageNum++
|
|
// fmt.Println(page)
|
|
// return pageNum <= 3
|
|
// })
|
|
//
|
|
func (c *CloudFront) ListCloudFrontOriginAccessIdentitiesPages(input *ListCloudFrontOriginAccessIdentitiesInput, fn func(*ListCloudFrontOriginAccessIdentitiesOutput, bool) bool) error {
|
|
return c.ListCloudFrontOriginAccessIdentitiesPagesWithContext(aws.BackgroundContext(), input, fn)
|
|
}
|
|
|
|
// ListCloudFrontOriginAccessIdentitiesPagesWithContext same as ListCloudFrontOriginAccessIdentitiesPages except
|
|
// it takes a Context and allows setting request options on the pages.
|
|
//
|
|
// The context must be non-nil and will be used for request cancellation. If
|
|
// the context is nil a panic will occur. In the future the SDK may create
|
|
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
|
|
// for more information on using Contexts.
|
|
func (c *CloudFront) ListCloudFrontOriginAccessIdentitiesPagesWithContext(ctx aws.Context, input *ListCloudFrontOriginAccessIdentitiesInput, fn func(*ListCloudFrontOriginAccessIdentitiesOutput, bool) bool, opts ...request.Option) error {
|
|
p := request.Pagination{
|
|
NewRequest: func() (*request.Request, error) {
|
|
var inCpy *ListCloudFrontOriginAccessIdentitiesInput
|
|
if input != nil {
|
|
tmp := *input
|
|
inCpy = &tmp
|
|
}
|
|
req, _ := c.ListCloudFrontOriginAccessIdentitiesRequest(inCpy)
|
|
req.SetContext(ctx)
|
|
req.ApplyOptions(opts...)
|
|
return req, nil
|
|
},
|
|
}
|
|
|
|
cont := true
|
|
for p.Next() && cont {
|
|
cont = fn(p.Page().(*ListCloudFrontOriginAccessIdentitiesOutput), !p.HasNextPage())
|
|
}
|
|
return p.Err()
|
|
}
|
|
|
|
const opListDistributions = "ListDistributions2017_03_25"
|
|
|
|
// ListDistributionsRequest generates a "aws/request.Request" representing the
|
|
// client's request for the ListDistributions operation. The "output" return
|
|
// value will be populated with the request's response once the request complets
|
|
// successfuly.
|
|
//
|
|
// Use "Send" method on the returned Request to send the API call to the service.
|
|
// the "output" return value is not valid until after Send returns without error.
|
|
//
|
|
// See ListDistributions for more information on using the ListDistributions
|
|
// API call, and error handling.
|
|
//
|
|
// This method is useful when you want to inject custom logic or configuration
|
|
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
|
|
//
|
|
//
|
|
// // Example sending a request using the ListDistributionsRequest method.
|
|
// req, resp := client.ListDistributionsRequest(params)
|
|
//
|
|
// err := req.Send()
|
|
// if err == nil { // resp is now filled
|
|
// fmt.Println(resp)
|
|
// }
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/ListDistributions
|
|
func (c *CloudFront) ListDistributionsRequest(input *ListDistributionsInput) (req *request.Request, output *ListDistributionsOutput) {
|
|
op := &request.Operation{
|
|
Name: opListDistributions,
|
|
HTTPMethod: "GET",
|
|
HTTPPath: "/2017-03-25/distribution",
|
|
Paginator: &request.Paginator{
|
|
InputTokens: []string{"Marker"},
|
|
OutputTokens: []string{"DistributionList.NextMarker"},
|
|
LimitToken: "MaxItems",
|
|
TruncationToken: "DistributionList.IsTruncated",
|
|
},
|
|
}
|
|
|
|
if input == nil {
|
|
input = &ListDistributionsInput{}
|
|
}
|
|
|
|
output = &ListDistributionsOutput{}
|
|
req = c.newRequest(op, input, output)
|
|
return
|
|
}
|
|
|
|
// ListDistributions API operation for Amazon CloudFront.
|
|
//
|
|
// List distributions.
|
|
//
|
|
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
|
|
// with awserr.Error's Code and Message methods to get detailed information about
|
|
// the error.
|
|
//
|
|
// See the AWS API reference guide for Amazon CloudFront's
|
|
// API operation ListDistributions for usage and error information.
|
|
//
|
|
// Returned Error Codes:
|
|
// * ErrCodeInvalidArgument "InvalidArgument"
|
|
// The argument is invalid.
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/ListDistributions
|
|
func (c *CloudFront) ListDistributions(input *ListDistributionsInput) (*ListDistributionsOutput, error) {
|
|
req, out := c.ListDistributionsRequest(input)
|
|
return out, req.Send()
|
|
}
|
|
|
|
// ListDistributionsWithContext is the same as ListDistributions with the addition of
|
|
// the ability to pass a context and additional request options.
|
|
//
|
|
// See ListDistributions for details on how to use this API operation.
|
|
//
|
|
// The context must be non-nil and will be used for request cancellation. If
|
|
// the context is nil a panic will occur. In the future the SDK may create
|
|
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
|
|
// for more information on using Contexts.
|
|
func (c *CloudFront) ListDistributionsWithContext(ctx aws.Context, input *ListDistributionsInput, opts ...request.Option) (*ListDistributionsOutput, error) {
|
|
req, out := c.ListDistributionsRequest(input)
|
|
req.SetContext(ctx)
|
|
req.ApplyOptions(opts...)
|
|
return out, req.Send()
|
|
}
|
|
|
|
// ListDistributionsPages iterates over the pages of a ListDistributions operation,
|
|
// calling the "fn" function with the response data for each page. To stop
|
|
// iterating, return false from the fn function.
|
|
//
|
|
// See ListDistributions method for more information on how to use this operation.
|
|
//
|
|
// Note: This operation can generate multiple requests to a service.
|
|
//
|
|
// // Example iterating over at most 3 pages of a ListDistributions operation.
|
|
// pageNum := 0
|
|
// err := client.ListDistributionsPages(params,
|
|
// func(page *ListDistributionsOutput, lastPage bool) bool {
|
|
// pageNum++
|
|
// fmt.Println(page)
|
|
// return pageNum <= 3
|
|
// })
|
|
//
|
|
func (c *CloudFront) ListDistributionsPages(input *ListDistributionsInput, fn func(*ListDistributionsOutput, bool) bool) error {
|
|
return c.ListDistributionsPagesWithContext(aws.BackgroundContext(), input, fn)
|
|
}
|
|
|
|
// ListDistributionsPagesWithContext same as ListDistributionsPages except
|
|
// it takes a Context and allows setting request options on the pages.
|
|
//
|
|
// The context must be non-nil and will be used for request cancellation. If
|
|
// the context is nil a panic will occur. In the future the SDK may create
|
|
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
|
|
// for more information on using Contexts.
|
|
func (c *CloudFront) ListDistributionsPagesWithContext(ctx aws.Context, input *ListDistributionsInput, fn func(*ListDistributionsOutput, bool) bool, opts ...request.Option) error {
|
|
p := request.Pagination{
|
|
NewRequest: func() (*request.Request, error) {
|
|
var inCpy *ListDistributionsInput
|
|
if input != nil {
|
|
tmp := *input
|
|
inCpy = &tmp
|
|
}
|
|
req, _ := c.ListDistributionsRequest(inCpy)
|
|
req.SetContext(ctx)
|
|
req.ApplyOptions(opts...)
|
|
return req, nil
|
|
},
|
|
}
|
|
|
|
cont := true
|
|
for p.Next() && cont {
|
|
cont = fn(p.Page().(*ListDistributionsOutput), !p.HasNextPage())
|
|
}
|
|
return p.Err()
|
|
}
|
|
|
|
const opListDistributionsByWebACLId = "ListDistributionsByWebACLId2017_03_25"
|
|
|
|
// ListDistributionsByWebACLIdRequest generates a "aws/request.Request" representing the
|
|
// client's request for the ListDistributionsByWebACLId operation. The "output" return
|
|
// value will be populated with the request's response once the request complets
|
|
// successfuly.
|
|
//
|
|
// Use "Send" method on the returned Request to send the API call to the service.
|
|
// the "output" return value is not valid until after Send returns without error.
|
|
//
|
|
// See ListDistributionsByWebACLId for more information on using the ListDistributionsByWebACLId
|
|
// API call, and error handling.
|
|
//
|
|
// This method is useful when you want to inject custom logic or configuration
|
|
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
|
|
//
|
|
//
|
|
// // Example sending a request using the ListDistributionsByWebACLIdRequest method.
|
|
// req, resp := client.ListDistributionsByWebACLIdRequest(params)
|
|
//
|
|
// err := req.Send()
|
|
// if err == nil { // resp is now filled
|
|
// fmt.Println(resp)
|
|
// }
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/ListDistributionsByWebACLId
|
|
func (c *CloudFront) ListDistributionsByWebACLIdRequest(input *ListDistributionsByWebACLIdInput) (req *request.Request, output *ListDistributionsByWebACLIdOutput) {
|
|
op := &request.Operation{
|
|
Name: opListDistributionsByWebACLId,
|
|
HTTPMethod: "GET",
|
|
HTTPPath: "/2017-03-25/distributionsByWebACLId/{WebACLId}",
|
|
}
|
|
|
|
if input == nil {
|
|
input = &ListDistributionsByWebACLIdInput{}
|
|
}
|
|
|
|
output = &ListDistributionsByWebACLIdOutput{}
|
|
req = c.newRequest(op, input, output)
|
|
return
|
|
}
|
|
|
|
// ListDistributionsByWebACLId API operation for Amazon CloudFront.
|
|
//
|
|
// List the distributions that are associated with a specified AWS WAF web ACL.
|
|
//
|
|
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
|
|
// with awserr.Error's Code and Message methods to get detailed information about
|
|
// the error.
|
|
//
|
|
// See the AWS API reference guide for Amazon CloudFront's
|
|
// API operation ListDistributionsByWebACLId for usage and error information.
|
|
//
|
|
// Returned Error Codes:
|
|
// * ErrCodeInvalidArgument "InvalidArgument"
|
|
// The argument is invalid.
|
|
//
|
|
// * ErrCodeInvalidWebACLId "InvalidWebACLId"
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/ListDistributionsByWebACLId
|
|
func (c *CloudFront) ListDistributionsByWebACLId(input *ListDistributionsByWebACLIdInput) (*ListDistributionsByWebACLIdOutput, error) {
|
|
req, out := c.ListDistributionsByWebACLIdRequest(input)
|
|
return out, req.Send()
|
|
}
|
|
|
|
// ListDistributionsByWebACLIdWithContext is the same as ListDistributionsByWebACLId with the addition of
|
|
// the ability to pass a context and additional request options.
|
|
//
|
|
// See ListDistributionsByWebACLId for details on how to use this API operation.
|
|
//
|
|
// The context must be non-nil and will be used for request cancellation. If
|
|
// the context is nil a panic will occur. In the future the SDK may create
|
|
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
|
|
// for more information on using Contexts.
|
|
func (c *CloudFront) ListDistributionsByWebACLIdWithContext(ctx aws.Context, input *ListDistributionsByWebACLIdInput, opts ...request.Option) (*ListDistributionsByWebACLIdOutput, error) {
|
|
req, out := c.ListDistributionsByWebACLIdRequest(input)
|
|
req.SetContext(ctx)
|
|
req.ApplyOptions(opts...)
|
|
return out, req.Send()
|
|
}
|
|
|
|
const opListInvalidations = "ListInvalidations2017_03_25"
|
|
|
|
// ListInvalidationsRequest generates a "aws/request.Request" representing the
|
|
// client's request for the ListInvalidations operation. The "output" return
|
|
// value will be populated with the request's response once the request complets
|
|
// successfuly.
|
|
//
|
|
// Use "Send" method on the returned Request to send the API call to the service.
|
|
// the "output" return value is not valid until after Send returns without error.
|
|
//
|
|
// See ListInvalidations for more information on using the ListInvalidations
|
|
// API call, and error handling.
|
|
//
|
|
// This method is useful when you want to inject custom logic or configuration
|
|
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
|
|
//
|
|
//
|
|
// // Example sending a request using the ListInvalidationsRequest method.
|
|
// req, resp := client.ListInvalidationsRequest(params)
|
|
//
|
|
// err := req.Send()
|
|
// if err == nil { // resp is now filled
|
|
// fmt.Println(resp)
|
|
// }
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/ListInvalidations
|
|
func (c *CloudFront) ListInvalidationsRequest(input *ListInvalidationsInput) (req *request.Request, output *ListInvalidationsOutput) {
|
|
op := &request.Operation{
|
|
Name: opListInvalidations,
|
|
HTTPMethod: "GET",
|
|
HTTPPath: "/2017-03-25/distribution/{DistributionId}/invalidation",
|
|
Paginator: &request.Paginator{
|
|
InputTokens: []string{"Marker"},
|
|
OutputTokens: []string{"InvalidationList.NextMarker"},
|
|
LimitToken: "MaxItems",
|
|
TruncationToken: "InvalidationList.IsTruncated",
|
|
},
|
|
}
|
|
|
|
if input == nil {
|
|
input = &ListInvalidationsInput{}
|
|
}
|
|
|
|
output = &ListInvalidationsOutput{}
|
|
req = c.newRequest(op, input, output)
|
|
return
|
|
}
|
|
|
|
// ListInvalidations API operation for Amazon CloudFront.
|
|
//
|
|
// Lists invalidation batches.
|
|
//
|
|
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
|
|
// with awserr.Error's Code and Message methods to get detailed information about
|
|
// the error.
|
|
//
|
|
// See the AWS API reference guide for Amazon CloudFront's
|
|
// API operation ListInvalidations for usage and error information.
|
|
//
|
|
// Returned Error Codes:
|
|
// * ErrCodeInvalidArgument "InvalidArgument"
|
|
// The argument is invalid.
|
|
//
|
|
// * ErrCodeNoSuchDistribution "NoSuchDistribution"
|
|
// The specified distribution does not exist.
|
|
//
|
|
// * ErrCodeAccessDenied "AccessDenied"
|
|
// Access denied.
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/ListInvalidations
|
|
func (c *CloudFront) ListInvalidations(input *ListInvalidationsInput) (*ListInvalidationsOutput, error) {
|
|
req, out := c.ListInvalidationsRequest(input)
|
|
return out, req.Send()
|
|
}
|
|
|
|
// ListInvalidationsWithContext is the same as ListInvalidations with the addition of
|
|
// the ability to pass a context and additional request options.
|
|
//
|
|
// See ListInvalidations for details on how to use this API operation.
|
|
//
|
|
// The context must be non-nil and will be used for request cancellation. If
|
|
// the context is nil a panic will occur. In the future the SDK may create
|
|
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
|
|
// for more information on using Contexts.
|
|
func (c *CloudFront) ListInvalidationsWithContext(ctx aws.Context, input *ListInvalidationsInput, opts ...request.Option) (*ListInvalidationsOutput, error) {
|
|
req, out := c.ListInvalidationsRequest(input)
|
|
req.SetContext(ctx)
|
|
req.ApplyOptions(opts...)
|
|
return out, req.Send()
|
|
}
|
|
|
|
// ListInvalidationsPages iterates over the pages of a ListInvalidations operation,
|
|
// calling the "fn" function with the response data for each page. To stop
|
|
// iterating, return false from the fn function.
|
|
//
|
|
// See ListInvalidations method for more information on how to use this operation.
|
|
//
|
|
// Note: This operation can generate multiple requests to a service.
|
|
//
|
|
// // Example iterating over at most 3 pages of a ListInvalidations operation.
|
|
// pageNum := 0
|
|
// err := client.ListInvalidationsPages(params,
|
|
// func(page *ListInvalidationsOutput, lastPage bool) bool {
|
|
// pageNum++
|
|
// fmt.Println(page)
|
|
// return pageNum <= 3
|
|
// })
|
|
//
|
|
func (c *CloudFront) ListInvalidationsPages(input *ListInvalidationsInput, fn func(*ListInvalidationsOutput, bool) bool) error {
|
|
return c.ListInvalidationsPagesWithContext(aws.BackgroundContext(), input, fn)
|
|
}
|
|
|
|
// ListInvalidationsPagesWithContext same as ListInvalidationsPages except
|
|
// it takes a Context and allows setting request options on the pages.
|
|
//
|
|
// The context must be non-nil and will be used for request cancellation. If
|
|
// the context is nil a panic will occur. In the future the SDK may create
|
|
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
|
|
// for more information on using Contexts.
|
|
func (c *CloudFront) ListInvalidationsPagesWithContext(ctx aws.Context, input *ListInvalidationsInput, fn func(*ListInvalidationsOutput, bool) bool, opts ...request.Option) error {
|
|
p := request.Pagination{
|
|
NewRequest: func() (*request.Request, error) {
|
|
var inCpy *ListInvalidationsInput
|
|
if input != nil {
|
|
tmp := *input
|
|
inCpy = &tmp
|
|
}
|
|
req, _ := c.ListInvalidationsRequest(inCpy)
|
|
req.SetContext(ctx)
|
|
req.ApplyOptions(opts...)
|
|
return req, nil
|
|
},
|
|
}
|
|
|
|
cont := true
|
|
for p.Next() && cont {
|
|
cont = fn(p.Page().(*ListInvalidationsOutput), !p.HasNextPage())
|
|
}
|
|
return p.Err()
|
|
}
|
|
|
|
const opListStreamingDistributions = "ListStreamingDistributions2017_03_25"
|
|
|
|
// ListStreamingDistributionsRequest generates a "aws/request.Request" representing the
|
|
// client's request for the ListStreamingDistributions operation. The "output" return
|
|
// value will be populated with the request's response once the request complets
|
|
// successfuly.
|
|
//
|
|
// Use "Send" method on the returned Request to send the API call to the service.
|
|
// the "output" return value is not valid until after Send returns without error.
|
|
//
|
|
// See ListStreamingDistributions for more information on using the ListStreamingDistributions
|
|
// API call, and error handling.
|
|
//
|
|
// This method is useful when you want to inject custom logic or configuration
|
|
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
|
|
//
|
|
//
|
|
// // Example sending a request using the ListStreamingDistributionsRequest method.
|
|
// req, resp := client.ListStreamingDistributionsRequest(params)
|
|
//
|
|
// err := req.Send()
|
|
// if err == nil { // resp is now filled
|
|
// fmt.Println(resp)
|
|
// }
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/ListStreamingDistributions
|
|
func (c *CloudFront) ListStreamingDistributionsRequest(input *ListStreamingDistributionsInput) (req *request.Request, output *ListStreamingDistributionsOutput) {
|
|
op := &request.Operation{
|
|
Name: opListStreamingDistributions,
|
|
HTTPMethod: "GET",
|
|
HTTPPath: "/2017-03-25/streaming-distribution",
|
|
Paginator: &request.Paginator{
|
|
InputTokens: []string{"Marker"},
|
|
OutputTokens: []string{"StreamingDistributionList.NextMarker"},
|
|
LimitToken: "MaxItems",
|
|
TruncationToken: "StreamingDistributionList.IsTruncated",
|
|
},
|
|
}
|
|
|
|
if input == nil {
|
|
input = &ListStreamingDistributionsInput{}
|
|
}
|
|
|
|
output = &ListStreamingDistributionsOutput{}
|
|
req = c.newRequest(op, input, output)
|
|
return
|
|
}
|
|
|
|
// ListStreamingDistributions API operation for Amazon CloudFront.
|
|
//
|
|
// List streaming distributions.
|
|
//
|
|
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
|
|
// with awserr.Error's Code and Message methods to get detailed information about
|
|
// the error.
|
|
//
|
|
// See the AWS API reference guide for Amazon CloudFront's
|
|
// API operation ListStreamingDistributions for usage and error information.
|
|
//
|
|
// Returned Error Codes:
|
|
// * ErrCodeInvalidArgument "InvalidArgument"
|
|
// The argument is invalid.
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/ListStreamingDistributions
|
|
func (c *CloudFront) ListStreamingDistributions(input *ListStreamingDistributionsInput) (*ListStreamingDistributionsOutput, error) {
|
|
req, out := c.ListStreamingDistributionsRequest(input)
|
|
return out, req.Send()
|
|
}
|
|
|
|
// ListStreamingDistributionsWithContext is the same as ListStreamingDistributions with the addition of
|
|
// the ability to pass a context and additional request options.
|
|
//
|
|
// See ListStreamingDistributions for details on how to use this API operation.
|
|
//
|
|
// The context must be non-nil and will be used for request cancellation. If
|
|
// the context is nil a panic will occur. In the future the SDK may create
|
|
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
|
|
// for more information on using Contexts.
|
|
func (c *CloudFront) ListStreamingDistributionsWithContext(ctx aws.Context, input *ListStreamingDistributionsInput, opts ...request.Option) (*ListStreamingDistributionsOutput, error) {
|
|
req, out := c.ListStreamingDistributionsRequest(input)
|
|
req.SetContext(ctx)
|
|
req.ApplyOptions(opts...)
|
|
return out, req.Send()
|
|
}
|
|
|
|
// ListStreamingDistributionsPages iterates over the pages of a ListStreamingDistributions operation,
|
|
// calling the "fn" function with the response data for each page. To stop
|
|
// iterating, return false from the fn function.
|
|
//
|
|
// See ListStreamingDistributions method for more information on how to use this operation.
|
|
//
|
|
// Note: This operation can generate multiple requests to a service.
|
|
//
|
|
// // Example iterating over at most 3 pages of a ListStreamingDistributions operation.
|
|
// pageNum := 0
|
|
// err := client.ListStreamingDistributionsPages(params,
|
|
// func(page *ListStreamingDistributionsOutput, lastPage bool) bool {
|
|
// pageNum++
|
|
// fmt.Println(page)
|
|
// return pageNum <= 3
|
|
// })
|
|
//
|
|
func (c *CloudFront) ListStreamingDistributionsPages(input *ListStreamingDistributionsInput, fn func(*ListStreamingDistributionsOutput, bool) bool) error {
|
|
return c.ListStreamingDistributionsPagesWithContext(aws.BackgroundContext(), input, fn)
|
|
}
|
|
|
|
// ListStreamingDistributionsPagesWithContext same as ListStreamingDistributionsPages except
|
|
// it takes a Context and allows setting request options on the pages.
|
|
//
|
|
// The context must be non-nil and will be used for request cancellation. If
|
|
// the context is nil a panic will occur. In the future the SDK may create
|
|
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
|
|
// for more information on using Contexts.
|
|
func (c *CloudFront) ListStreamingDistributionsPagesWithContext(ctx aws.Context, input *ListStreamingDistributionsInput, fn func(*ListStreamingDistributionsOutput, bool) bool, opts ...request.Option) error {
|
|
p := request.Pagination{
|
|
NewRequest: func() (*request.Request, error) {
|
|
var inCpy *ListStreamingDistributionsInput
|
|
if input != nil {
|
|
tmp := *input
|
|
inCpy = &tmp
|
|
}
|
|
req, _ := c.ListStreamingDistributionsRequest(inCpy)
|
|
req.SetContext(ctx)
|
|
req.ApplyOptions(opts...)
|
|
return req, nil
|
|
},
|
|
}
|
|
|
|
cont := true
|
|
for p.Next() && cont {
|
|
cont = fn(p.Page().(*ListStreamingDistributionsOutput), !p.HasNextPage())
|
|
}
|
|
return p.Err()
|
|
}
|
|
|
|
const opListTagsForResource = "ListTagsForResource2017_03_25"
|
|
|
|
// ListTagsForResourceRequest generates a "aws/request.Request" representing the
|
|
// client's request for the ListTagsForResource operation. The "output" return
|
|
// value will be populated with the request's response once the request complets
|
|
// successfuly.
|
|
//
|
|
// Use "Send" method on the returned Request to send the API call to the service.
|
|
// the "output" return value is not valid until after Send returns without error.
|
|
//
|
|
// See ListTagsForResource for more information on using the ListTagsForResource
|
|
// API call, and error handling.
|
|
//
|
|
// This method is useful when you want to inject custom logic or configuration
|
|
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
|
|
//
|
|
//
|
|
// // Example sending a request using the ListTagsForResourceRequest method.
|
|
// req, resp := client.ListTagsForResourceRequest(params)
|
|
//
|
|
// err := req.Send()
|
|
// if err == nil { // resp is now filled
|
|
// fmt.Println(resp)
|
|
// }
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/ListTagsForResource
|
|
func (c *CloudFront) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) {
|
|
op := &request.Operation{
|
|
Name: opListTagsForResource,
|
|
HTTPMethod: "GET",
|
|
HTTPPath: "/2017-03-25/tagging",
|
|
}
|
|
|
|
if input == nil {
|
|
input = &ListTagsForResourceInput{}
|
|
}
|
|
|
|
output = &ListTagsForResourceOutput{}
|
|
req = c.newRequest(op, input, output)
|
|
return
|
|
}
|
|
|
|
// ListTagsForResource API operation for Amazon CloudFront.
|
|
//
|
|
// List tags for a CloudFront resource.
|
|
//
|
|
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
|
|
// with awserr.Error's Code and Message methods to get detailed information about
|
|
// the error.
|
|
//
|
|
// See the AWS API reference guide for Amazon CloudFront's
|
|
// API operation ListTagsForResource for usage and error information.
|
|
//
|
|
// Returned Error Codes:
|
|
// * ErrCodeAccessDenied "AccessDenied"
|
|
// Access denied.
|
|
//
|
|
// * ErrCodeInvalidArgument "InvalidArgument"
|
|
// The argument is invalid.
|
|
//
|
|
// * ErrCodeInvalidTagging "InvalidTagging"
|
|
//
|
|
// * ErrCodeNoSuchResource "NoSuchResource"
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/ListTagsForResource
|
|
func (c *CloudFront) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) {
|
|
req, out := c.ListTagsForResourceRequest(input)
|
|
return out, req.Send()
|
|
}
|
|
|
|
// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of
|
|
// the ability to pass a context and additional request options.
|
|
//
|
|
// See ListTagsForResource for details on how to use this API operation.
|
|
//
|
|
// The context must be non-nil and will be used for request cancellation. If
|
|
// the context is nil a panic will occur. In the future the SDK may create
|
|
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
|
|
// for more information on using Contexts.
|
|
func (c *CloudFront) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) {
|
|
req, out := c.ListTagsForResourceRequest(input)
|
|
req.SetContext(ctx)
|
|
req.ApplyOptions(opts...)
|
|
return out, req.Send()
|
|
}
|
|
|
|
const opTagResource = "TagResource2017_03_25"
|
|
|
|
// TagResourceRequest generates a "aws/request.Request" representing the
|
|
// client's request for the TagResource operation. The "output" return
|
|
// value will be populated with the request's response once the request complets
|
|
// successfuly.
|
|
//
|
|
// Use "Send" method on the returned Request to send the API call to the service.
|
|
// the "output" return value is not valid until after Send returns without error.
|
|
//
|
|
// See TagResource for more information on using the TagResource
|
|
// API call, and error handling.
|
|
//
|
|
// This method is useful when you want to inject custom logic or configuration
|
|
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
|
|
//
|
|
//
|
|
// // Example sending a request using the TagResourceRequest method.
|
|
// req, resp := client.TagResourceRequest(params)
|
|
//
|
|
// err := req.Send()
|
|
// if err == nil { // resp is now filled
|
|
// fmt.Println(resp)
|
|
// }
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/TagResource
|
|
func (c *CloudFront) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) {
|
|
op := &request.Operation{
|
|
Name: opTagResource,
|
|
HTTPMethod: "POST",
|
|
HTTPPath: "/2017-03-25/tagging?Operation=Tag",
|
|
}
|
|
|
|
if input == nil {
|
|
input = &TagResourceInput{}
|
|
}
|
|
|
|
output = &TagResourceOutput{}
|
|
req = c.newRequest(op, input, output)
|
|
req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler)
|
|
req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
|
|
return
|
|
}
|
|
|
|
// TagResource API operation for Amazon CloudFront.
|
|
//
|
|
// Add tags to a CloudFront resource.
|
|
//
|
|
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
|
|
// with awserr.Error's Code and Message methods to get detailed information about
|
|
// the error.
|
|
//
|
|
// See the AWS API reference guide for Amazon CloudFront's
|
|
// API operation TagResource for usage and error information.
|
|
//
|
|
// Returned Error Codes:
|
|
// * ErrCodeAccessDenied "AccessDenied"
|
|
// Access denied.
|
|
//
|
|
// * ErrCodeInvalidArgument "InvalidArgument"
|
|
// The argument is invalid.
|
|
//
|
|
// * ErrCodeInvalidTagging "InvalidTagging"
|
|
//
|
|
// * ErrCodeNoSuchResource "NoSuchResource"
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/TagResource
|
|
func (c *CloudFront) TagResource(input *TagResourceInput) (*TagResourceOutput, error) {
|
|
req, out := c.TagResourceRequest(input)
|
|
return out, req.Send()
|
|
}
|
|
|
|
// TagResourceWithContext is the same as TagResource with the addition of
|
|
// the ability to pass a context and additional request options.
|
|
//
|
|
// See TagResource for details on how to use this API operation.
|
|
//
|
|
// The context must be non-nil and will be used for request cancellation. If
|
|
// the context is nil a panic will occur. In the future the SDK may create
|
|
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
|
|
// for more information on using Contexts.
|
|
func (c *CloudFront) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) {
|
|
req, out := c.TagResourceRequest(input)
|
|
req.SetContext(ctx)
|
|
req.ApplyOptions(opts...)
|
|
return out, req.Send()
|
|
}
|
|
|
|
const opUntagResource = "UntagResource2017_03_25"
|
|
|
|
// UntagResourceRequest generates a "aws/request.Request" representing the
|
|
// client's request for the UntagResource operation. The "output" return
|
|
// value will be populated with the request's response once the request complets
|
|
// successfuly.
|
|
//
|
|
// Use "Send" method on the returned Request to send the API call to the service.
|
|
// the "output" return value is not valid until after Send returns without error.
|
|
//
|
|
// See UntagResource for more information on using the UntagResource
|
|
// API call, and error handling.
|
|
//
|
|
// This method is useful when you want to inject custom logic or configuration
|
|
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
|
|
//
|
|
//
|
|
// // Example sending a request using the UntagResourceRequest method.
|
|
// req, resp := client.UntagResourceRequest(params)
|
|
//
|
|
// err := req.Send()
|
|
// if err == nil { // resp is now filled
|
|
// fmt.Println(resp)
|
|
// }
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/UntagResource
|
|
func (c *CloudFront) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) {
|
|
op := &request.Operation{
|
|
Name: opUntagResource,
|
|
HTTPMethod: "POST",
|
|
HTTPPath: "/2017-03-25/tagging?Operation=Untag",
|
|
}
|
|
|
|
if input == nil {
|
|
input = &UntagResourceInput{}
|
|
}
|
|
|
|
output = &UntagResourceOutput{}
|
|
req = c.newRequest(op, input, output)
|
|
req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler)
|
|
req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
|
|
return
|
|
}
|
|
|
|
// UntagResource API operation for Amazon CloudFront.
|
|
//
|
|
// Remove tags from a CloudFront resource.
|
|
//
|
|
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
|
|
// with awserr.Error's Code and Message methods to get detailed information about
|
|
// the error.
|
|
//
|
|
// See the AWS API reference guide for Amazon CloudFront's
|
|
// API operation UntagResource for usage and error information.
|
|
//
|
|
// Returned Error Codes:
|
|
// * ErrCodeAccessDenied "AccessDenied"
|
|
// Access denied.
|
|
//
|
|
// * ErrCodeInvalidArgument "InvalidArgument"
|
|
// The argument is invalid.
|
|
//
|
|
// * ErrCodeInvalidTagging "InvalidTagging"
|
|
//
|
|
// * ErrCodeNoSuchResource "NoSuchResource"
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/UntagResource
|
|
func (c *CloudFront) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) {
|
|
req, out := c.UntagResourceRequest(input)
|
|
return out, req.Send()
|
|
}
|
|
|
|
// UntagResourceWithContext is the same as UntagResource with the addition of
|
|
// the ability to pass a context and additional request options.
|
|
//
|
|
// See UntagResource for details on how to use this API operation.
|
|
//
|
|
// The context must be non-nil and will be used for request cancellation. If
|
|
// the context is nil a panic will occur. In the future the SDK may create
|
|
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
|
|
// for more information on using Contexts.
|
|
func (c *CloudFront) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) {
|
|
req, out := c.UntagResourceRequest(input)
|
|
req.SetContext(ctx)
|
|
req.ApplyOptions(opts...)
|
|
return out, req.Send()
|
|
}
|
|
|
|
const opUpdateCloudFrontOriginAccessIdentity = "UpdateCloudFrontOriginAccessIdentity2017_03_25"
|
|
|
|
// UpdateCloudFrontOriginAccessIdentityRequest generates a "aws/request.Request" representing the
|
|
// client's request for the UpdateCloudFrontOriginAccessIdentity operation. The "output" return
|
|
// value will be populated with the request's response once the request complets
|
|
// successfuly.
|
|
//
|
|
// Use "Send" method on the returned Request to send the API call to the service.
|
|
// the "output" return value is not valid until after Send returns without error.
|
|
//
|
|
// See UpdateCloudFrontOriginAccessIdentity for more information on using the UpdateCloudFrontOriginAccessIdentity
|
|
// API call, and error handling.
|
|
//
|
|
// This method is useful when you want to inject custom logic or configuration
|
|
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
|
|
//
|
|
//
|
|
// // Example sending a request using the UpdateCloudFrontOriginAccessIdentityRequest method.
|
|
// req, resp := client.UpdateCloudFrontOriginAccessIdentityRequest(params)
|
|
//
|
|
// err := req.Send()
|
|
// if err == nil { // resp is now filled
|
|
// fmt.Println(resp)
|
|
// }
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/UpdateCloudFrontOriginAccessIdentity
|
|
func (c *CloudFront) UpdateCloudFrontOriginAccessIdentityRequest(input *UpdateCloudFrontOriginAccessIdentityInput) (req *request.Request, output *UpdateCloudFrontOriginAccessIdentityOutput) {
|
|
op := &request.Operation{
|
|
Name: opUpdateCloudFrontOriginAccessIdentity,
|
|
HTTPMethod: "PUT",
|
|
HTTPPath: "/2017-03-25/origin-access-identity/cloudfront/{Id}/config",
|
|
}
|
|
|
|
if input == nil {
|
|
input = &UpdateCloudFrontOriginAccessIdentityInput{}
|
|
}
|
|
|
|
output = &UpdateCloudFrontOriginAccessIdentityOutput{}
|
|
req = c.newRequest(op, input, output)
|
|
return
|
|
}
|
|
|
|
// UpdateCloudFrontOriginAccessIdentity API operation for Amazon CloudFront.
|
|
//
|
|
// Update an origin access identity.
|
|
//
|
|
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
|
|
// with awserr.Error's Code and Message methods to get detailed information about
|
|
// the error.
|
|
//
|
|
// See the AWS API reference guide for Amazon CloudFront's
|
|
// API operation UpdateCloudFrontOriginAccessIdentity for usage and error information.
|
|
//
|
|
// Returned Error Codes:
|
|
// * ErrCodeAccessDenied "AccessDenied"
|
|
// Access denied.
|
|
//
|
|
// * ErrCodeIllegalUpdate "IllegalUpdate"
|
|
// Origin and CallerReference cannot be updated.
|
|
//
|
|
// * ErrCodeInvalidIfMatchVersion "InvalidIfMatchVersion"
|
|
// The If-Match version is missing or not valid for the distribution.
|
|
//
|
|
// * ErrCodeMissingBody "MissingBody"
|
|
// This operation requires a body. Ensure that the body is present and the Content-Type
|
|
// header is set.
|
|
//
|
|
// * ErrCodeNoSuchCloudFrontOriginAccessIdentity "NoSuchCloudFrontOriginAccessIdentity"
|
|
// The specified origin access identity does not exist.
|
|
//
|
|
// * ErrCodePreconditionFailed "PreconditionFailed"
|
|
// The precondition given in one or more of the request-header fields evaluated
|
|
// to false.
|
|
//
|
|
// * ErrCodeInvalidArgument "InvalidArgument"
|
|
// The argument is invalid.
|
|
//
|
|
// * ErrCodeInconsistentQuantities "InconsistentQuantities"
|
|
// The value of Quantity and the size of Items don't match.
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/UpdateCloudFrontOriginAccessIdentity
|
|
func (c *CloudFront) UpdateCloudFrontOriginAccessIdentity(input *UpdateCloudFrontOriginAccessIdentityInput) (*UpdateCloudFrontOriginAccessIdentityOutput, error) {
|
|
req, out := c.UpdateCloudFrontOriginAccessIdentityRequest(input)
|
|
return out, req.Send()
|
|
}
|
|
|
|
// UpdateCloudFrontOriginAccessIdentityWithContext is the same as UpdateCloudFrontOriginAccessIdentity with the addition of
|
|
// the ability to pass a context and additional request options.
|
|
//
|
|
// See UpdateCloudFrontOriginAccessIdentity for details on how to use this API operation.
|
|
//
|
|
// The context must be non-nil and will be used for request cancellation. If
|
|
// the context is nil a panic will occur. In the future the SDK may create
|
|
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
|
|
// for more information on using Contexts.
|
|
func (c *CloudFront) UpdateCloudFrontOriginAccessIdentityWithContext(ctx aws.Context, input *UpdateCloudFrontOriginAccessIdentityInput, opts ...request.Option) (*UpdateCloudFrontOriginAccessIdentityOutput, error) {
|
|
req, out := c.UpdateCloudFrontOriginAccessIdentityRequest(input)
|
|
req.SetContext(ctx)
|
|
req.ApplyOptions(opts...)
|
|
return out, req.Send()
|
|
}
|
|
|
|
const opUpdateDistribution = "UpdateDistribution2017_03_25"
|
|
|
|
// UpdateDistributionRequest generates a "aws/request.Request" representing the
|
|
// client's request for the UpdateDistribution operation. The "output" return
|
|
// value will be populated with the request's response once the request complets
|
|
// successfuly.
|
|
//
|
|
// Use "Send" method on the returned Request to send the API call to the service.
|
|
// the "output" return value is not valid until after Send returns without error.
|
|
//
|
|
// See UpdateDistribution for more information on using the UpdateDistribution
|
|
// API call, and error handling.
|
|
//
|
|
// This method is useful when you want to inject custom logic or configuration
|
|
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
|
|
//
|
|
//
|
|
// // Example sending a request using the UpdateDistributionRequest method.
|
|
// req, resp := client.UpdateDistributionRequest(params)
|
|
//
|
|
// err := req.Send()
|
|
// if err == nil { // resp is now filled
|
|
// fmt.Println(resp)
|
|
// }
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/UpdateDistribution
|
|
func (c *CloudFront) UpdateDistributionRequest(input *UpdateDistributionInput) (req *request.Request, output *UpdateDistributionOutput) {
|
|
op := &request.Operation{
|
|
Name: opUpdateDistribution,
|
|
HTTPMethod: "PUT",
|
|
HTTPPath: "/2017-03-25/distribution/{Id}/config",
|
|
}
|
|
|
|
if input == nil {
|
|
input = &UpdateDistributionInput{}
|
|
}
|
|
|
|
output = &UpdateDistributionOutput{}
|
|
req = c.newRequest(op, input, output)
|
|
return
|
|
}
|
|
|
|
// UpdateDistribution API operation for Amazon CloudFront.
|
|
//
|
|
// Updates the configuration for a web distribution. Perform the following steps.
|
|
//
|
|
// For information about updating a distribution using the CloudFront console,
|
|
// see Creating or Updating a Web Distribution Using the CloudFront Console
|
|
// (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-creating-console.html)
|
|
// 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 need to get a new Etag header.
|
|
//
|
|
// Update the XML document that was returned in the response to your GetDistributionConfig
|
|
// request to include the desired changes. 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 the 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.
|
|
//
|
|
// 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 distribution. 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 you're actually specifying.
|
|
//
|
|
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
|
|
// with awserr.Error's Code and Message methods to get detailed information about
|
|
// the error.
|
|
//
|
|
// See the AWS API reference guide for Amazon CloudFront's
|
|
// API operation UpdateDistribution for usage and error information.
|
|
//
|
|
// Returned Error Codes:
|
|
// * ErrCodeAccessDenied "AccessDenied"
|
|
// Access denied.
|
|
//
|
|
// * ErrCodeCNAMEAlreadyExists "CNAMEAlreadyExists"
|
|
//
|
|
// * ErrCodeIllegalUpdate "IllegalUpdate"
|
|
// Origin and CallerReference cannot be updated.
|
|
//
|
|
// * ErrCodeInvalidIfMatchVersion "InvalidIfMatchVersion"
|
|
// The If-Match version is missing or not valid for the distribution.
|
|
//
|
|
// * ErrCodeMissingBody "MissingBody"
|
|
// This operation requires a body. Ensure that the body is present and the Content-Type
|
|
// header is set.
|
|
//
|
|
// * ErrCodeNoSuchDistribution "NoSuchDistribution"
|
|
// The specified distribution does not exist.
|
|
//
|
|
// * ErrCodePreconditionFailed "PreconditionFailed"
|
|
// The precondition given in one or more of the request-header fields evaluated
|
|
// to false.
|
|
//
|
|
// * ErrCodeTooManyDistributionCNAMEs "TooManyDistributionCNAMEs"
|
|
// Your request contains more CNAMEs than are allowed per distribution.
|
|
//
|
|
// * ErrCodeInvalidDefaultRootObject "InvalidDefaultRootObject"
|
|
// The default root object file name is too big or contains an invalid character.
|
|
//
|
|
// * ErrCodeInvalidRelativePath "InvalidRelativePath"
|
|
// The relative path is too big, is not URL-encoded, or does not begin with
|
|
// a slash (/).
|
|
//
|
|
// * ErrCodeInvalidErrorCode "InvalidErrorCode"
|
|
//
|
|
// * ErrCodeInvalidResponseCode "InvalidResponseCode"
|
|
//
|
|
// * ErrCodeInvalidArgument "InvalidArgument"
|
|
// The argument is invalid.
|
|
//
|
|
// * ErrCodeInvalidOriginAccessIdentity "InvalidOriginAccessIdentity"
|
|
// The origin access identity is not valid or doesn't exist.
|
|
//
|
|
// * ErrCodeTooManyTrustedSigners "TooManyTrustedSigners"
|
|
// Your request contains more trusted signers than are allowed per distribution.
|
|
//
|
|
// * ErrCodeTrustedSignerDoesNotExist "TrustedSignerDoesNotExist"
|
|
// One or more of your trusted signers don't exist.
|
|
//
|
|
// * ErrCodeInvalidViewerCertificate "InvalidViewerCertificate"
|
|
//
|
|
// * ErrCodeInvalidMinimumProtocolVersion "InvalidMinimumProtocolVersion"
|
|
//
|
|
// * ErrCodeInvalidRequiredProtocol "InvalidRequiredProtocol"
|
|
// This operation requires the HTTPS protocol. Ensure that you specify the HTTPS
|
|
// protocol in your request, or omit the RequiredProtocols element from your
|
|
// distribution configuration.
|
|
//
|
|
// * ErrCodeNoSuchOrigin "NoSuchOrigin"
|
|
// No origin exists with the specified Origin Id.
|
|
//
|
|
// * ErrCodeTooManyOrigins "TooManyOrigins"
|
|
// You cannot create more origins for the distribution.
|
|
//
|
|
// * ErrCodeTooManyCacheBehaviors "TooManyCacheBehaviors"
|
|
// You cannot create more cache behaviors for the distribution.
|
|
//
|
|
// * ErrCodeTooManyCookieNamesInWhiteList "TooManyCookieNamesInWhiteList"
|
|
// Your request contains more cookie names in the whitelist than are allowed
|
|
// per cache behavior.
|
|
//
|
|
// * ErrCodeInvalidForwardCookies "InvalidForwardCookies"
|
|
// Your request contains forward cookies option which doesn't match with the
|
|
// expectation for the whitelisted list of cookie names. Either list of cookie
|
|
// names has been specified when not allowed or list of cookie names is missing
|
|
// when expected.
|
|
//
|
|
// * ErrCodeTooManyHeadersInForwardedValues "TooManyHeadersInForwardedValues"
|
|
//
|
|
// * ErrCodeInvalidHeadersForS3Origin "InvalidHeadersForS3Origin"
|
|
//
|
|
// * ErrCodeInconsistentQuantities "InconsistentQuantities"
|
|
// The value of Quantity and the size of Items don't match.
|
|
//
|
|
// * ErrCodeTooManyCertificates "TooManyCertificates"
|
|
// You cannot create anymore custom SSL/TLS certificates.
|
|
//
|
|
// * ErrCodeInvalidLocationCode "InvalidLocationCode"
|
|
//
|
|
// * ErrCodeInvalidGeoRestrictionParameter "InvalidGeoRestrictionParameter"
|
|
//
|
|
// * ErrCodeInvalidTTLOrder "InvalidTTLOrder"
|
|
//
|
|
// * ErrCodeInvalidWebACLId "InvalidWebACLId"
|
|
//
|
|
// * ErrCodeTooManyOriginCustomHeaders "TooManyOriginCustomHeaders"
|
|
//
|
|
// * ErrCodeTooManyQueryStringParameters "TooManyQueryStringParameters"
|
|
//
|
|
// * ErrCodeInvalidQueryStringParameters "InvalidQueryStringParameters"
|
|
//
|
|
// * ErrCodeTooManyDistributionsWithLambdaAssociations "TooManyDistributionsWithLambdaAssociations"
|
|
// Processing your request would cause the maximum number of distributions with
|
|
// Lambda function associations per owner to be exceeded.
|
|
//
|
|
// * ErrCodeTooManyLambdaFunctionAssociations "TooManyLambdaFunctionAssociations"
|
|
// Your request contains more Lambda function associations than are allowed
|
|
// per distribution.
|
|
//
|
|
// * ErrCodeInvalidLambdaFunctionAssociation "InvalidLambdaFunctionAssociation"
|
|
// The specified Lambda function association is invalid.
|
|
//
|
|
// * ErrCodeInvalidOriginReadTimeout "InvalidOriginReadTimeout"
|
|
//
|
|
// * ErrCodeInvalidOriginKeepaliveTimeout "InvalidOriginKeepaliveTimeout"
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/UpdateDistribution
|
|
func (c *CloudFront) UpdateDistribution(input *UpdateDistributionInput) (*UpdateDistributionOutput, error) {
|
|
req, out := c.UpdateDistributionRequest(input)
|
|
return out, req.Send()
|
|
}
|
|
|
|
// UpdateDistributionWithContext is the same as UpdateDistribution with the addition of
|
|
// the ability to pass a context and additional request options.
|
|
//
|
|
// See UpdateDistribution for details on how to use this API operation.
|
|
//
|
|
// The context must be non-nil and will be used for request cancellation. If
|
|
// the context is nil a panic will occur. In the future the SDK may create
|
|
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
|
|
// for more information on using Contexts.
|
|
func (c *CloudFront) UpdateDistributionWithContext(ctx aws.Context, input *UpdateDistributionInput, opts ...request.Option) (*UpdateDistributionOutput, error) {
|
|
req, out := c.UpdateDistributionRequest(input)
|
|
req.SetContext(ctx)
|
|
req.ApplyOptions(opts...)
|
|
return out, req.Send()
|
|
}
|
|
|
|
const opUpdateStreamingDistribution = "UpdateStreamingDistribution2017_03_25"
|
|
|
|
// UpdateStreamingDistributionRequest generates a "aws/request.Request" representing the
|
|
// client's request for the UpdateStreamingDistribution operation. The "output" return
|
|
// value will be populated with the request's response once the request complets
|
|
// successfuly.
|
|
//
|
|
// Use "Send" method on the returned Request to send the API call to the service.
|
|
// the "output" return value is not valid until after Send returns without error.
|
|
//
|
|
// See UpdateStreamingDistribution for more information on using the UpdateStreamingDistribution
|
|
// API call, and error handling.
|
|
//
|
|
// This method is useful when you want to inject custom logic or configuration
|
|
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
|
|
//
|
|
//
|
|
// // Example sending a request using the UpdateStreamingDistributionRequest method.
|
|
// req, resp := client.UpdateStreamingDistributionRequest(params)
|
|
//
|
|
// err := req.Send()
|
|
// if err == nil { // resp is now filled
|
|
// fmt.Println(resp)
|
|
// }
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/UpdateStreamingDistribution
|
|
func (c *CloudFront) UpdateStreamingDistributionRequest(input *UpdateStreamingDistributionInput) (req *request.Request, output *UpdateStreamingDistributionOutput) {
|
|
op := &request.Operation{
|
|
Name: opUpdateStreamingDistribution,
|
|
HTTPMethod: "PUT",
|
|
HTTPPath: "/2017-03-25/streaming-distribution/{Id}/config",
|
|
}
|
|
|
|
if input == nil {
|
|
input = &UpdateStreamingDistributionInput{}
|
|
}
|
|
|
|
output = &UpdateStreamingDistributionOutput{}
|
|
req = c.newRequest(op, input, output)
|
|
return
|
|
}
|
|
|
|
// UpdateStreamingDistribution API operation for Amazon CloudFront.
|
|
//
|
|
// Update a streaming distribution.
|
|
//
|
|
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
|
|
// with awserr.Error's Code and Message methods to get detailed information about
|
|
// the error.
|
|
//
|
|
// See the AWS API reference guide for Amazon CloudFront's
|
|
// API operation UpdateStreamingDistribution for usage and error information.
|
|
//
|
|
// Returned Error Codes:
|
|
// * ErrCodeAccessDenied "AccessDenied"
|
|
// Access denied.
|
|
//
|
|
// * ErrCodeCNAMEAlreadyExists "CNAMEAlreadyExists"
|
|
//
|
|
// * ErrCodeIllegalUpdate "IllegalUpdate"
|
|
// Origin and CallerReference cannot be updated.
|
|
//
|
|
// * ErrCodeInvalidIfMatchVersion "InvalidIfMatchVersion"
|
|
// The If-Match version is missing or not valid for the distribution.
|
|
//
|
|
// * ErrCodeMissingBody "MissingBody"
|
|
// This operation requires a body. Ensure that the body is present and the Content-Type
|
|
// header is set.
|
|
//
|
|
// * ErrCodeNoSuchStreamingDistribution "NoSuchStreamingDistribution"
|
|
// The specified streaming distribution does not exist.
|
|
//
|
|
// * ErrCodePreconditionFailed "PreconditionFailed"
|
|
// The precondition given in one or more of the request-header fields evaluated
|
|
// to false.
|
|
//
|
|
// * ErrCodeTooManyStreamingDistributionCNAMEs "TooManyStreamingDistributionCNAMEs"
|
|
//
|
|
// * ErrCodeInvalidArgument "InvalidArgument"
|
|
// The argument is invalid.
|
|
//
|
|
// * ErrCodeInvalidOriginAccessIdentity "InvalidOriginAccessIdentity"
|
|
// The origin access identity is not valid or doesn't exist.
|
|
//
|
|
// * ErrCodeTooManyTrustedSigners "TooManyTrustedSigners"
|
|
// Your request contains more trusted signers than are allowed per distribution.
|
|
//
|
|
// * ErrCodeTrustedSignerDoesNotExist "TrustedSignerDoesNotExist"
|
|
// One or more of your trusted signers don't exist.
|
|
//
|
|
// * ErrCodeInconsistentQuantities "InconsistentQuantities"
|
|
// The value of Quantity and the size of Items don't match.
|
|
//
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/UpdateStreamingDistribution
|
|
func (c *CloudFront) UpdateStreamingDistribution(input *UpdateStreamingDistributionInput) (*UpdateStreamingDistributionOutput, error) {
|
|
req, out := c.UpdateStreamingDistributionRequest(input)
|
|
return out, req.Send()
|
|
}
|
|
|
|
// UpdateStreamingDistributionWithContext is the same as UpdateStreamingDistribution with the addition of
|
|
// the ability to pass a context and additional request options.
|
|
//
|
|
// See UpdateStreamingDistribution for details on how to use this API operation.
|
|
//
|
|
// The context must be non-nil and will be used for request cancellation. If
|
|
// the context is nil a panic will occur. In the future the SDK may create
|
|
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
|
|
// for more information on using Contexts.
|
|
func (c *CloudFront) UpdateStreamingDistributionWithContext(ctx aws.Context, input *UpdateStreamingDistributionInput, opts ...request.Option) (*UpdateStreamingDistributionOutput, error) {
|
|
req, out := c.UpdateStreamingDistributionRequest(input)
|
|
req.SetContext(ctx)
|
|
req.ApplyOptions(opts...)
|
|
return out, req.Send()
|
|
}
|
|
|
|
// A complex type that lists the AWS accounts, if any, that you included in
|
|
// the TrustedSigners complex type for this distribution. These are the accounts
|
|
// that you want to allow to create signed URLs for private content.
|
|
//
|
|
// The Signer complex type lists the AWS account number of the trusted signer
|
|
// or self if the signer is the AWS account that created the distribution. The
|
|
// Signer element also includes the IDs of any active CloudFront key pairs that
|
|
// are associated with the trusted signer's AWS account. If no KeyPairId element
|
|
// appears for a Signer, that signer can't create signed URLs.
|
|
//
|
|
// For more information, see Serving Private Content through CloudFront (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html)
|
|
// in the Amazon CloudFront Developer Guide.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/ActiveTrustedSigners
|
|
type ActiveTrustedSigners struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// Enabled is true if any of the AWS accounts listed in the TrustedSigners complex
|
|
// type for this RTMP distribution have active CloudFront key pairs. If not,
|
|
// Enabled is false.
|
|
//
|
|
// For more information, see ActiveTrustedSigners.
|
|
//
|
|
// Enabled is a required field
|
|
Enabled *bool `type:"boolean" required:"true"`
|
|
|
|
// A complex type that contains one Signer complex type for each trusted signer
|
|
// that is specified in the TrustedSigners complex type.
|
|
//
|
|
// For more information, see ActiveTrustedSigners.
|
|
Items []*Signer `locationNameList:"Signer" type:"list"`
|
|
|
|
// A complex type that contains one Signer complex type for each trusted signer
|
|
// specified in the TrustedSigners complex type.
|
|
//
|
|
// For more information, see ActiveTrustedSigners.
|
|
//
|
|
// Quantity is a required field
|
|
Quantity *int64 `type:"integer" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s ActiveTrustedSigners) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s ActiveTrustedSigners) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// SetEnabled sets the Enabled field's value.
|
|
func (s *ActiveTrustedSigners) SetEnabled(v bool) *ActiveTrustedSigners {
|
|
s.Enabled = &v
|
|
return s
|
|
}
|
|
|
|
// SetItems sets the Items field's value.
|
|
func (s *ActiveTrustedSigners) SetItems(v []*Signer) *ActiveTrustedSigners {
|
|
s.Items = v
|
|
return s
|
|
}
|
|
|
|
// SetQuantity sets the Quantity field's value.
|
|
func (s *ActiveTrustedSigners) SetQuantity(v int64) *ActiveTrustedSigners {
|
|
s.Quantity = &v
|
|
return s
|
|
}
|
|
|
|
// A complex type that contains information about CNAMEs (alternate domain names),
|
|
// if any, for this distribution.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/Aliases
|
|
type Aliases struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// A complex type that contains the CNAME aliases, if any, that you want to
|
|
// associate with this distribution.
|
|
Items []*string `locationNameList:"CNAME" type:"list"`
|
|
|
|
// The number of CNAME aliases, if any, that you want to associate with this
|
|
// distribution.
|
|
//
|
|
// Quantity is a required field
|
|
Quantity *int64 `type:"integer" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s Aliases) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s Aliases) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *Aliases) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "Aliases"}
|
|
if s.Quantity == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Quantity"))
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetItems sets the Items field's value.
|
|
func (s *Aliases) SetItems(v []*string) *Aliases {
|
|
s.Items = v
|
|
return s
|
|
}
|
|
|
|
// SetQuantity sets the Quantity field's value.
|
|
func (s *Aliases) SetQuantity(v int64) *Aliases {
|
|
s.Quantity = &v
|
|
return s
|
|
}
|
|
|
|
// A complex type that controls which HTTP methods CloudFront processes and
|
|
// forwards to your Amazon S3 bucket or your custom origin. There are three
|
|
// choices:
|
|
//
|
|
// * CloudFront forwards only GET and HEAD requests.
|
|
//
|
|
// * CloudFront forwards only GET, HEAD, and OPTIONS requests.
|
|
//
|
|
// * CloudFront forwards GET, HEAD, OPTIONS, PUT, PATCH, POST, and DELETE
|
|
// requests.
|
|
//
|
|
// If you pick the third choice, you may need to restrict access to your Amazon
|
|
// S3 bucket or to your custom origin so users can't perform operations that
|
|
// you don't want them to. For example, you might not want users to have permissions
|
|
// to delete objects from your origin.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/AllowedMethods
|
|
type AllowedMethods struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// A complex type that controls whether CloudFront caches the response to requests
|
|
// using the specified HTTP methods. There are two choices:
|
|
//
|
|
// * CloudFront caches responses to GET and HEAD requests.
|
|
//
|
|
// * CloudFront caches responses to GET, HEAD, and OPTIONS requests.
|
|
//
|
|
// If you pick the second choice for your Amazon S3 Origin, you may need to
|
|
// forward Access-Control-Request-Method, Access-Control-Request-Headers, and
|
|
// Origin headers for the responses to be cached correctly.
|
|
CachedMethods *CachedMethods `type:"structure"`
|
|
|
|
// A complex type that contains the HTTP methods that you want CloudFront to
|
|
// process and forward to your origin.
|
|
//
|
|
// Items is a required field
|
|
Items []*string `locationNameList:"Method" type:"list" required:"true"`
|
|
|
|
// The number of HTTP methods that you want CloudFront to forward to your origin.
|
|
// Valid values are 2 (for GET and HEAD requests), 3 (for GET, HEAD, and OPTIONS
|
|
// requests) and 7 (for GET, HEAD, OPTIONS, PUT, PATCH, POST, and DELETE requests).
|
|
//
|
|
// Quantity is a required field
|
|
Quantity *int64 `type:"integer" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s AllowedMethods) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s AllowedMethods) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *AllowedMethods) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "AllowedMethods"}
|
|
if s.Items == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Items"))
|
|
}
|
|
if s.Quantity == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Quantity"))
|
|
}
|
|
if s.CachedMethods != nil {
|
|
if err := s.CachedMethods.Validate(); err != nil {
|
|
invalidParams.AddNested("CachedMethods", err.(request.ErrInvalidParams))
|
|
}
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetCachedMethods sets the CachedMethods field's value.
|
|
func (s *AllowedMethods) SetCachedMethods(v *CachedMethods) *AllowedMethods {
|
|
s.CachedMethods = v
|
|
return s
|
|
}
|
|
|
|
// SetItems sets the Items field's value.
|
|
func (s *AllowedMethods) SetItems(v []*string) *AllowedMethods {
|
|
s.Items = v
|
|
return s
|
|
}
|
|
|
|
// SetQuantity sets the Quantity field's value.
|
|
func (s *AllowedMethods) SetQuantity(v int64) *AllowedMethods {
|
|
s.Quantity = &v
|
|
return s
|
|
}
|
|
|
|
// A complex type that describes how CloudFront processes requests.
|
|
//
|
|
// You must create at least as many cache behaviors (including the default cache
|
|
// behavior) as you have origins if you want CloudFront to distribute objects
|
|
// from all of the origins. Each cache behavior specifies the one origin from
|
|
// which you want CloudFront to get objects. If you have two origins and only
|
|
// the default cache behavior, the default cache behavior will cause CloudFront
|
|
// to get objects from one of the origins, but the other origin is never used.
|
|
//
|
|
// For the current limit on the number of cache behaviors that you can add to
|
|
// a distribution, see Amazon CloudFront Limits (http://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html#limits_cloudfront)
|
|
// in the AWS General Reference.
|
|
//
|
|
// If you don't want to specify any cache behaviors, include only an empty CacheBehaviors
|
|
// element. Don't include an empty CacheBehavior element, or CloudFront returns
|
|
// a MalformedXML error.
|
|
//
|
|
// To delete all cache behaviors in an existing distribution, update the distribution
|
|
// configuration and include only an empty CacheBehaviors element.
|
|
//
|
|
// To add, change, or remove one or more cache behaviors, update the distribution
|
|
// configuration and specify all of the cache behaviors that you want to include
|
|
// in the updated distribution.
|
|
//
|
|
// For more information about cache behaviors, see Cache Behaviors (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValuesCacheBehavior)
|
|
// in the Amazon CloudFront Developer Guide.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/CacheBehavior
|
|
type CacheBehavior struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// A complex type that controls which HTTP methods CloudFront processes and
|
|
// forwards to your Amazon S3 bucket or your custom origin. There are three
|
|
// choices:
|
|
//
|
|
// * CloudFront forwards only GET and HEAD requests.
|
|
//
|
|
// * CloudFront forwards only GET, HEAD, and OPTIONS requests.
|
|
//
|
|
// * CloudFront forwards GET, HEAD, OPTIONS, PUT, PATCH, POST, and DELETE
|
|
// requests.
|
|
//
|
|
// If you pick the third choice, you may need to restrict access to your Amazon
|
|
// S3 bucket or to your custom origin so users can't perform operations that
|
|
// you don't want them to. For example, you might not want users to have permissions
|
|
// to delete objects from your origin.
|
|
AllowedMethods *AllowedMethods `type:"structure"`
|
|
|
|
// Whether you want CloudFront to automatically compress certain files for this
|
|
// cache behavior. If so, specify true; if not, specify false. For more information,
|
|
// see Serving Compressed Files (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/ServingCompressedFiles.html)
|
|
// in the Amazon CloudFront Developer Guide.
|
|
Compress *bool `type:"boolean"`
|
|
|
|
// The default amount of time that you want objects to stay in CloudFront caches
|
|
// before CloudFront forwards another request to your origin to determine whether
|
|
// the object has been updated. The value that you specify applies only when
|
|
// your origin does not add HTTP headers such as Cache-Control max-age, Cache-Control
|
|
// s-maxage, and Expires to objects. For more information, see Specifying How
|
|
// Long Objects and Errors Stay in a CloudFront Edge Cache (Expiration) (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html)
|
|
// in the Amazon CloudFront Developer Guide.
|
|
DefaultTTL *int64 `type:"long"`
|
|
|
|
// A complex type that specifies how CloudFront handles query strings and cookies.
|
|
//
|
|
// ForwardedValues is a required field
|
|
ForwardedValues *ForwardedValues `type:"structure" required:"true"`
|
|
|
|
// A complex type that contains zero or more Lambda function associations for
|
|
// a cache behavior.
|
|
LambdaFunctionAssociations *LambdaFunctionAssociations `type:"structure"`
|
|
|
|
// The maximum amount of time that you want objects to stay in CloudFront caches
|
|
// before CloudFront forwards another request to your origin to determine whether
|
|
// the object has been updated. The value that you specify applies only when
|
|
// your origin adds HTTP headers such as Cache-Control max-age, Cache-Control
|
|
// s-maxage, and Expires to objects. For more information, see Specifying How
|
|
// Long Objects and Errors Stay in a CloudFront Edge Cache (Expiration) (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html)
|
|
// in the Amazon CloudFront Developer Guide.
|
|
MaxTTL *int64 `type:"long"`
|
|
|
|
// The minimum amount of time that you want objects to stay in CloudFront caches
|
|
// before CloudFront forwards another request to your origin to determine whether
|
|
// the object has been updated. For more information, see Specifying How Long
|
|
// Objects and Errors Stay in a CloudFront Edge Cache (Expiration) (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html)
|
|
// in the Amazon Amazon CloudFront Developer Guide.
|
|
//
|
|
// You must specify 0 for MinTTL if you configure CloudFront to forward all
|
|
// headers to your origin (under Headers, if you specify 1 for Quantity and
|
|
// * for Name).
|
|
//
|
|
// MinTTL is a required field
|
|
MinTTL *int64 `type:"long" required:"true"`
|
|
|
|
// The pattern (for example, images/*.jpg) that specifies which requests to
|
|
// apply the behavior to. When CloudFront receives a viewer request, the requested
|
|
// path is compared with path patterns in the order in which cache behaviors
|
|
// are listed in the distribution.
|
|
//
|
|
// You can optionally include a slash (/) at the beginning of the path pattern.
|
|
// For example, /images/*.jpg. CloudFront behavior is the same with or without
|
|
// the leading /.
|
|
//
|
|
// The path pattern for the default cache behavior is * and cannot be changed.
|
|
// If the request for an object does not match the path pattern for any cache
|
|
// behaviors, CloudFront applies the behavior in the default cache behavior.
|
|
//
|
|
// For more information, see Path Pattern (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValuesPathPattern)
|
|
// in the Amazon CloudFront Developer Guide.
|
|
//
|
|
// PathPattern is a required field
|
|
PathPattern *string `type:"string" required:"true"`
|
|
|
|
// Indicates whether you want to distribute media files in the Microsoft Smooth
|
|
// Streaming format using the origin that is associated with this cache behavior.
|
|
// If so, specify true; if not, specify false. If you specify true for SmoothStreaming,
|
|
// you can still distribute other content using this cache behavior if the content
|
|
// matches the value of PathPattern.
|
|
SmoothStreaming *bool `type:"boolean"`
|
|
|
|
// The value of ID for the origin that you want CloudFront to route requests
|
|
// to when a request matches the path pattern either for a cache behavior or
|
|
// for the default cache behavior.
|
|
//
|
|
// TargetOriginId is a required field
|
|
TargetOriginId *string `type:"string" required:"true"`
|
|
|
|
// A complex type that specifies the AWS accounts, if any, that you want to
|
|
// allow to create signed URLs for private content.
|
|
//
|
|
// If you want to require signed URLs in requests for objects in the target
|
|
// origin that match the PathPattern for this cache behavior, specify true for
|
|
// Enabled, and specify the applicable values for Quantity and Items. For more
|
|
// information, see Serving Private Content through CloudFront (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html)
|
|
// in the Amazon Amazon CloudFront Developer Guide.
|
|
//
|
|
// If you don't want to require signed URLs in requests for objects that match
|
|
// PathPattern, specify false for Enabled and 0 for Quantity. Omit Items.
|
|
//
|
|
// To add, change, or remove one or more trusted signers, change Enabled to
|
|
// true (if it's currently false), change Quantity as applicable, and specify
|
|
// all of the trusted signers that you want to include in the updated distribution.
|
|
//
|
|
// TrustedSigners is a required field
|
|
TrustedSigners *TrustedSigners `type:"structure" required:"true"`
|
|
|
|
// The protocol that viewers can use to access the files in the origin specified
|
|
// by TargetOriginId when a request matches the path pattern in PathPattern.
|
|
// You can specify the following options:
|
|
//
|
|
// * allow-all: Viewers can use HTTP or HTTPS.
|
|
//
|
|
// * redirect-to-https: If a viewer submits an HTTP request, CloudFront returns
|
|
// an HTTP status code of 301 (Moved Permanently) to the viewer along with
|
|
// the HTTPS URL. The viewer then resubmits the request using the new URL.
|
|
//
|
|
//
|
|
// * https-only: If a viewer sends an HTTP request, CloudFront returns an
|
|
// HTTP status code of 403 (Forbidden).
|
|
//
|
|
// For more information about requiring the HTTPS protocol, see Using an HTTPS
|
|
// Connection to Access Your Objects (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/SecureConnections.html)
|
|
// in the Amazon CloudFront Developer Guide.
|
|
//
|
|
// The only way to guarantee that viewers retrieve an object that was fetched
|
|
// from the origin using HTTPS is never to use any other protocol to fetch the
|
|
// object. If you have recently changed from HTTP to HTTPS, we recommend that
|
|
// you clear your objects' cache because cached objects are protocol agnostic.
|
|
// That means that an edge location will return an object from the cache regardless
|
|
// of whether the current request protocol matches the protocol used previously.
|
|
// For more information, see Specifying How Long Objects and Errors Stay in
|
|
// a CloudFront Edge Cache (Expiration) (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html)
|
|
// in the Amazon CloudFront Developer Guide.
|
|
//
|
|
// ViewerProtocolPolicy is a required field
|
|
ViewerProtocolPolicy *string `type:"string" required:"true" enum:"ViewerProtocolPolicy"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s CacheBehavior) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s CacheBehavior) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *CacheBehavior) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "CacheBehavior"}
|
|
if s.ForwardedValues == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("ForwardedValues"))
|
|
}
|
|
if s.MinTTL == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("MinTTL"))
|
|
}
|
|
if s.PathPattern == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("PathPattern"))
|
|
}
|
|
if s.TargetOriginId == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("TargetOriginId"))
|
|
}
|
|
if s.TrustedSigners == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("TrustedSigners"))
|
|
}
|
|
if s.ViewerProtocolPolicy == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("ViewerProtocolPolicy"))
|
|
}
|
|
if s.AllowedMethods != nil {
|
|
if err := s.AllowedMethods.Validate(); err != nil {
|
|
invalidParams.AddNested("AllowedMethods", err.(request.ErrInvalidParams))
|
|
}
|
|
}
|
|
if s.ForwardedValues != nil {
|
|
if err := s.ForwardedValues.Validate(); err != nil {
|
|
invalidParams.AddNested("ForwardedValues", err.(request.ErrInvalidParams))
|
|
}
|
|
}
|
|
if s.LambdaFunctionAssociations != nil {
|
|
if err := s.LambdaFunctionAssociations.Validate(); err != nil {
|
|
invalidParams.AddNested("LambdaFunctionAssociations", err.(request.ErrInvalidParams))
|
|
}
|
|
}
|
|
if s.TrustedSigners != nil {
|
|
if err := s.TrustedSigners.Validate(); err != nil {
|
|
invalidParams.AddNested("TrustedSigners", err.(request.ErrInvalidParams))
|
|
}
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetAllowedMethods sets the AllowedMethods field's value.
|
|
func (s *CacheBehavior) SetAllowedMethods(v *AllowedMethods) *CacheBehavior {
|
|
s.AllowedMethods = v
|
|
return s
|
|
}
|
|
|
|
// SetCompress sets the Compress field's value.
|
|
func (s *CacheBehavior) SetCompress(v bool) *CacheBehavior {
|
|
s.Compress = &v
|
|
return s
|
|
}
|
|
|
|
// SetDefaultTTL sets the DefaultTTL field's value.
|
|
func (s *CacheBehavior) SetDefaultTTL(v int64) *CacheBehavior {
|
|
s.DefaultTTL = &v
|
|
return s
|
|
}
|
|
|
|
// SetForwardedValues sets the ForwardedValues field's value.
|
|
func (s *CacheBehavior) SetForwardedValues(v *ForwardedValues) *CacheBehavior {
|
|
s.ForwardedValues = v
|
|
return s
|
|
}
|
|
|
|
// SetLambdaFunctionAssociations sets the LambdaFunctionAssociations field's value.
|
|
func (s *CacheBehavior) SetLambdaFunctionAssociations(v *LambdaFunctionAssociations) *CacheBehavior {
|
|
s.LambdaFunctionAssociations = v
|
|
return s
|
|
}
|
|
|
|
// SetMaxTTL sets the MaxTTL field's value.
|
|
func (s *CacheBehavior) SetMaxTTL(v int64) *CacheBehavior {
|
|
s.MaxTTL = &v
|
|
return s
|
|
}
|
|
|
|
// SetMinTTL sets the MinTTL field's value.
|
|
func (s *CacheBehavior) SetMinTTL(v int64) *CacheBehavior {
|
|
s.MinTTL = &v
|
|
return s
|
|
}
|
|
|
|
// SetPathPattern sets the PathPattern field's value.
|
|
func (s *CacheBehavior) SetPathPattern(v string) *CacheBehavior {
|
|
s.PathPattern = &v
|
|
return s
|
|
}
|
|
|
|
// SetSmoothStreaming sets the SmoothStreaming field's value.
|
|
func (s *CacheBehavior) SetSmoothStreaming(v bool) *CacheBehavior {
|
|
s.SmoothStreaming = &v
|
|
return s
|
|
}
|
|
|
|
// SetTargetOriginId sets the TargetOriginId field's value.
|
|
func (s *CacheBehavior) SetTargetOriginId(v string) *CacheBehavior {
|
|
s.TargetOriginId = &v
|
|
return s
|
|
}
|
|
|
|
// SetTrustedSigners sets the TrustedSigners field's value.
|
|
func (s *CacheBehavior) SetTrustedSigners(v *TrustedSigners) *CacheBehavior {
|
|
s.TrustedSigners = v
|
|
return s
|
|
}
|
|
|
|
// SetViewerProtocolPolicy sets the ViewerProtocolPolicy field's value.
|
|
func (s *CacheBehavior) SetViewerProtocolPolicy(v string) *CacheBehavior {
|
|
s.ViewerProtocolPolicy = &v
|
|
return s
|
|
}
|
|
|
|
// A complex type that contains zero or more CacheBehavior elements.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/CacheBehaviors
|
|
type CacheBehaviors struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// Optional: A complex type that contains cache behaviors for this distribution.
|
|
// If Quantity is 0, you can omit Items.
|
|
Items []*CacheBehavior `locationNameList:"CacheBehavior" type:"list"`
|
|
|
|
// The number of cache behaviors for this distribution.
|
|
//
|
|
// Quantity is a required field
|
|
Quantity *int64 `type:"integer" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s CacheBehaviors) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s CacheBehaviors) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *CacheBehaviors) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "CacheBehaviors"}
|
|
if s.Quantity == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Quantity"))
|
|
}
|
|
if s.Items != nil {
|
|
for i, v := range s.Items {
|
|
if v == nil {
|
|
continue
|
|
}
|
|
if err := v.Validate(); err != nil {
|
|
invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Items", i), err.(request.ErrInvalidParams))
|
|
}
|
|
}
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetItems sets the Items field's value.
|
|
func (s *CacheBehaviors) SetItems(v []*CacheBehavior) *CacheBehaviors {
|
|
s.Items = v
|
|
return s
|
|
}
|
|
|
|
// SetQuantity sets the Quantity field's value.
|
|
func (s *CacheBehaviors) SetQuantity(v int64) *CacheBehaviors {
|
|
s.Quantity = &v
|
|
return s
|
|
}
|
|
|
|
// A complex type that controls whether CloudFront caches the response to requests
|
|
// using the specified HTTP methods. There are two choices:
|
|
//
|
|
// * CloudFront caches responses to GET and HEAD requests.
|
|
//
|
|
// * CloudFront caches responses to GET, HEAD, and OPTIONS requests.
|
|
//
|
|
// If you pick the second choice for your Amazon S3 Origin, you may need to
|
|
// forward Access-Control-Request-Method, Access-Control-Request-Headers, and
|
|
// Origin headers for the responses to be cached correctly.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/CachedMethods
|
|
type CachedMethods struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// A complex type that contains the HTTP methods that you want CloudFront to
|
|
// cache responses to.
|
|
//
|
|
// Items is a required field
|
|
Items []*string `locationNameList:"Method" type:"list" required:"true"`
|
|
|
|
// The number of HTTP methods for which you want CloudFront to cache responses.
|
|
// Valid values are 2 (for caching responses to GET and HEAD requests) and 3
|
|
// (for caching responses to GET, HEAD, and OPTIONS requests).
|
|
//
|
|
// Quantity is a required field
|
|
Quantity *int64 `type:"integer" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s CachedMethods) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s CachedMethods) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *CachedMethods) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "CachedMethods"}
|
|
if s.Items == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Items"))
|
|
}
|
|
if s.Quantity == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Quantity"))
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetItems sets the Items field's value.
|
|
func (s *CachedMethods) SetItems(v []*string) *CachedMethods {
|
|
s.Items = v
|
|
return s
|
|
}
|
|
|
|
// SetQuantity sets the Quantity field's value.
|
|
func (s *CachedMethods) SetQuantity(v int64) *CachedMethods {
|
|
s.Quantity = &v
|
|
return s
|
|
}
|
|
|
|
// A complex type that specifies whether you want CloudFront to forward cookies
|
|
// to the origin and, if so, which ones. For more information about forwarding
|
|
// cookies to the origin, see How CloudFront Forwards, Caches, and Logs Cookies
|
|
// (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Cookies.html)
|
|
// in the Amazon CloudFront Developer Guide.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/CookieNames
|
|
type CookieNames struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// A complex type that contains one Name element for each cookie that you want
|
|
// CloudFront to forward to the origin for this cache behavior.
|
|
Items []*string `locationNameList:"Name" type:"list"`
|
|
|
|
// The number of different cookies that you want CloudFront to forward to the
|
|
// origin for this cache behavior.
|
|
//
|
|
// Quantity is a required field
|
|
Quantity *int64 `type:"integer" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s CookieNames) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s CookieNames) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *CookieNames) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "CookieNames"}
|
|
if s.Quantity == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Quantity"))
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetItems sets the Items field's value.
|
|
func (s *CookieNames) SetItems(v []*string) *CookieNames {
|
|
s.Items = v
|
|
return s
|
|
}
|
|
|
|
// SetQuantity sets the Quantity field's value.
|
|
func (s *CookieNames) SetQuantity(v int64) *CookieNames {
|
|
s.Quantity = &v
|
|
return s
|
|
}
|
|
|
|
// A complex type that specifies whether you want CloudFront to forward cookies
|
|
// to the origin and, if so, which ones. For more information about forwarding
|
|
// cookies to the origin, see How CloudFront Forwards, Caches, and Logs Cookies
|
|
// (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Cookies.html)
|
|
// in the Amazon CloudFront Developer Guide.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/CookiePreference
|
|
type CookiePreference struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// Specifies which cookies to forward to the origin for this cache behavior:
|
|
// all, none, or the list of cookies specified in the WhitelistedNames complex
|
|
// type.
|
|
//
|
|
// Amazon S3 doesn't process cookies. When the cache behavior is forwarding
|
|
// requests to an Amazon S3 origin, specify none for the Forward element.
|
|
//
|
|
// Forward is a required field
|
|
Forward *string `type:"string" required:"true" enum:"ItemSelection"`
|
|
|
|
// Required if you specify whitelist for the value of Forward:. A complex type
|
|
// that specifies how many different cookies you want CloudFront to forward
|
|
// to the origin for this cache behavior and, if you want to forward selected
|
|
// cookies, the names of those cookies.
|
|
//
|
|
// If you specify all or none for the value of Forward, omit WhitelistedNames.
|
|
// If you change the value of Forward from whitelist to all or none and you
|
|
// don't delete the WhitelistedNames element and its child elements, CloudFront
|
|
// deletes them automatically.
|
|
//
|
|
// For the current limit on the number of cookie names that you can whitelist
|
|
// for each cache behavior, see Amazon CloudFront Limits (http://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html#limits_cloudfront)
|
|
// in the AWS General Reference.
|
|
WhitelistedNames *CookieNames `type:"structure"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s CookiePreference) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s CookiePreference) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *CookiePreference) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "CookiePreference"}
|
|
if s.Forward == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Forward"))
|
|
}
|
|
if s.WhitelistedNames != nil {
|
|
if err := s.WhitelistedNames.Validate(); err != nil {
|
|
invalidParams.AddNested("WhitelistedNames", err.(request.ErrInvalidParams))
|
|
}
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetForward sets the Forward field's value.
|
|
func (s *CookiePreference) SetForward(v string) *CookiePreference {
|
|
s.Forward = &v
|
|
return s
|
|
}
|
|
|
|
// SetWhitelistedNames sets the WhitelistedNames field's value.
|
|
func (s *CookiePreference) SetWhitelistedNames(v *CookieNames) *CookiePreference {
|
|
s.WhitelistedNames = v
|
|
return s
|
|
}
|
|
|
|
// The request to create a new origin access identity.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/CreateCloudFrontOriginAccessIdentityRequest
|
|
type CreateCloudFrontOriginAccessIdentityInput struct {
|
|
_ struct{} `type:"structure" payload:"CloudFrontOriginAccessIdentityConfig"`
|
|
|
|
// The current configuration information for the identity.
|
|
//
|
|
// CloudFrontOriginAccessIdentityConfig is a required field
|
|
CloudFrontOriginAccessIdentityConfig *OriginAccessIdentityConfig `locationName:"CloudFrontOriginAccessIdentityConfig" type:"structure" required:"true" xmlURI:"http://cloudfront.amazonaws.com/doc/2017-03-25/"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s CreateCloudFrontOriginAccessIdentityInput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s CreateCloudFrontOriginAccessIdentityInput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *CreateCloudFrontOriginAccessIdentityInput) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "CreateCloudFrontOriginAccessIdentityInput"}
|
|
if s.CloudFrontOriginAccessIdentityConfig == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("CloudFrontOriginAccessIdentityConfig"))
|
|
}
|
|
if s.CloudFrontOriginAccessIdentityConfig != nil {
|
|
if err := s.CloudFrontOriginAccessIdentityConfig.Validate(); err != nil {
|
|
invalidParams.AddNested("CloudFrontOriginAccessIdentityConfig", err.(request.ErrInvalidParams))
|
|
}
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetCloudFrontOriginAccessIdentityConfig sets the CloudFrontOriginAccessIdentityConfig field's value.
|
|
func (s *CreateCloudFrontOriginAccessIdentityInput) SetCloudFrontOriginAccessIdentityConfig(v *OriginAccessIdentityConfig) *CreateCloudFrontOriginAccessIdentityInput {
|
|
s.CloudFrontOriginAccessIdentityConfig = v
|
|
return s
|
|
}
|
|
|
|
// The returned result of the corresponding request.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/CreateCloudFrontOriginAccessIdentityResult
|
|
type CreateCloudFrontOriginAccessIdentityOutput struct {
|
|
_ struct{} `type:"structure" payload:"CloudFrontOriginAccessIdentity"`
|
|
|
|
// The origin access identity's information.
|
|
CloudFrontOriginAccessIdentity *OriginAccessIdentity `type:"structure"`
|
|
|
|
// The current version of the origin access identity created.
|
|
ETag *string `location:"header" locationName:"ETag" type:"string"`
|
|
|
|
// The fully qualified URI of the new origin access identity just created. For
|
|
// example: https://cloudfront.amazonaws.com/2010-11-01/origin-access-identity/cloudfront/E74FTE3AJFJ256A.
|
|
Location *string `location:"header" locationName:"Location" type:"string"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s CreateCloudFrontOriginAccessIdentityOutput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s CreateCloudFrontOriginAccessIdentityOutput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// SetCloudFrontOriginAccessIdentity sets the CloudFrontOriginAccessIdentity field's value.
|
|
func (s *CreateCloudFrontOriginAccessIdentityOutput) SetCloudFrontOriginAccessIdentity(v *OriginAccessIdentity) *CreateCloudFrontOriginAccessIdentityOutput {
|
|
s.CloudFrontOriginAccessIdentity = v
|
|
return s
|
|
}
|
|
|
|
// SetETag sets the ETag field's value.
|
|
func (s *CreateCloudFrontOriginAccessIdentityOutput) SetETag(v string) *CreateCloudFrontOriginAccessIdentityOutput {
|
|
s.ETag = &v
|
|
return s
|
|
}
|
|
|
|
// SetLocation sets the Location field's value.
|
|
func (s *CreateCloudFrontOriginAccessIdentityOutput) SetLocation(v string) *CreateCloudFrontOriginAccessIdentityOutput {
|
|
s.Location = &v
|
|
return s
|
|
}
|
|
|
|
// The request to create a new distribution.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/CreateDistributionRequest
|
|
type CreateDistributionInput struct {
|
|
_ struct{} `type:"structure" payload:"DistributionConfig"`
|
|
|
|
// The distribution's configuration information.
|
|
//
|
|
// DistributionConfig is a required field
|
|
DistributionConfig *DistributionConfig `locationName:"DistributionConfig" type:"structure" required:"true" xmlURI:"http://cloudfront.amazonaws.com/doc/2017-03-25/"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s CreateDistributionInput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s CreateDistributionInput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *CreateDistributionInput) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "CreateDistributionInput"}
|
|
if s.DistributionConfig == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("DistributionConfig"))
|
|
}
|
|
if s.DistributionConfig != nil {
|
|
if err := s.DistributionConfig.Validate(); err != nil {
|
|
invalidParams.AddNested("DistributionConfig", err.(request.ErrInvalidParams))
|
|
}
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetDistributionConfig sets the DistributionConfig field's value.
|
|
func (s *CreateDistributionInput) SetDistributionConfig(v *DistributionConfig) *CreateDistributionInput {
|
|
s.DistributionConfig = v
|
|
return s
|
|
}
|
|
|
|
// The returned result of the corresponding request.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/CreateDistributionResult
|
|
type CreateDistributionOutput struct {
|
|
_ struct{} `type:"structure" payload:"Distribution"`
|
|
|
|
// The distribution's information.
|
|
Distribution *Distribution `type:"structure"`
|
|
|
|
// The current version of the distribution created.
|
|
ETag *string `location:"header" locationName:"ETag" type:"string"`
|
|
|
|
// The fully qualified URI of the new distribution resource just created. For
|
|
// example: https://cloudfront.amazonaws.com/2010-11-01/distribution/EDFDVBD632BHDS5.
|
|
Location *string `location:"header" locationName:"Location" type:"string"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s CreateDistributionOutput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s CreateDistributionOutput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// SetDistribution sets the Distribution field's value.
|
|
func (s *CreateDistributionOutput) SetDistribution(v *Distribution) *CreateDistributionOutput {
|
|
s.Distribution = v
|
|
return s
|
|
}
|
|
|
|
// SetETag sets the ETag field's value.
|
|
func (s *CreateDistributionOutput) SetETag(v string) *CreateDistributionOutput {
|
|
s.ETag = &v
|
|
return s
|
|
}
|
|
|
|
// SetLocation sets the Location field's value.
|
|
func (s *CreateDistributionOutput) SetLocation(v string) *CreateDistributionOutput {
|
|
s.Location = &v
|
|
return s
|
|
}
|
|
|
|
// The request to create a new distribution with tags.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/CreateDistributionWithTagsRequest
|
|
type CreateDistributionWithTagsInput struct {
|
|
_ struct{} `type:"structure" payload:"DistributionConfigWithTags"`
|
|
|
|
// The distribution's configuration information.
|
|
//
|
|
// DistributionConfigWithTags is a required field
|
|
DistributionConfigWithTags *DistributionConfigWithTags `locationName:"DistributionConfigWithTags" type:"structure" required:"true" xmlURI:"http://cloudfront.amazonaws.com/doc/2017-03-25/"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s CreateDistributionWithTagsInput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s CreateDistributionWithTagsInput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *CreateDistributionWithTagsInput) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "CreateDistributionWithTagsInput"}
|
|
if s.DistributionConfigWithTags == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("DistributionConfigWithTags"))
|
|
}
|
|
if s.DistributionConfigWithTags != nil {
|
|
if err := s.DistributionConfigWithTags.Validate(); err != nil {
|
|
invalidParams.AddNested("DistributionConfigWithTags", err.(request.ErrInvalidParams))
|
|
}
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetDistributionConfigWithTags sets the DistributionConfigWithTags field's value.
|
|
func (s *CreateDistributionWithTagsInput) SetDistributionConfigWithTags(v *DistributionConfigWithTags) *CreateDistributionWithTagsInput {
|
|
s.DistributionConfigWithTags = v
|
|
return s
|
|
}
|
|
|
|
// The returned result of the corresponding request.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/CreateDistributionWithTagsResult
|
|
type CreateDistributionWithTagsOutput struct {
|
|
_ struct{} `type:"structure" payload:"Distribution"`
|
|
|
|
// The distribution's information.
|
|
Distribution *Distribution `type:"structure"`
|
|
|
|
// The current version of the distribution created.
|
|
ETag *string `location:"header" locationName:"ETag" type:"string"`
|
|
|
|
// The fully qualified URI of the new distribution resource just created. For
|
|
// example: https://cloudfront.amazonaws.com/2010-11-01/distribution/EDFDVBD632BHDS5.
|
|
Location *string `location:"header" locationName:"Location" type:"string"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s CreateDistributionWithTagsOutput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s CreateDistributionWithTagsOutput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// SetDistribution sets the Distribution field's value.
|
|
func (s *CreateDistributionWithTagsOutput) SetDistribution(v *Distribution) *CreateDistributionWithTagsOutput {
|
|
s.Distribution = v
|
|
return s
|
|
}
|
|
|
|
// SetETag sets the ETag field's value.
|
|
func (s *CreateDistributionWithTagsOutput) SetETag(v string) *CreateDistributionWithTagsOutput {
|
|
s.ETag = &v
|
|
return s
|
|
}
|
|
|
|
// SetLocation sets the Location field's value.
|
|
func (s *CreateDistributionWithTagsOutput) SetLocation(v string) *CreateDistributionWithTagsOutput {
|
|
s.Location = &v
|
|
return s
|
|
}
|
|
|
|
// The request to create an invalidation.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/CreateInvalidationRequest
|
|
type CreateInvalidationInput struct {
|
|
_ struct{} `type:"structure" payload:"InvalidationBatch"`
|
|
|
|
// The distribution's id.
|
|
//
|
|
// DistributionId is a required field
|
|
DistributionId *string `location:"uri" locationName:"DistributionId" type:"string" required:"true"`
|
|
|
|
// The batch information for the invalidation.
|
|
//
|
|
// InvalidationBatch is a required field
|
|
InvalidationBatch *InvalidationBatch `locationName:"InvalidationBatch" type:"structure" required:"true" xmlURI:"http://cloudfront.amazonaws.com/doc/2017-03-25/"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s CreateInvalidationInput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s CreateInvalidationInput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *CreateInvalidationInput) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "CreateInvalidationInput"}
|
|
if s.DistributionId == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("DistributionId"))
|
|
}
|
|
if s.InvalidationBatch == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("InvalidationBatch"))
|
|
}
|
|
if s.InvalidationBatch != nil {
|
|
if err := s.InvalidationBatch.Validate(); err != nil {
|
|
invalidParams.AddNested("InvalidationBatch", err.(request.ErrInvalidParams))
|
|
}
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetDistributionId sets the DistributionId field's value.
|
|
func (s *CreateInvalidationInput) SetDistributionId(v string) *CreateInvalidationInput {
|
|
s.DistributionId = &v
|
|
return s
|
|
}
|
|
|
|
// SetInvalidationBatch sets the InvalidationBatch field's value.
|
|
func (s *CreateInvalidationInput) SetInvalidationBatch(v *InvalidationBatch) *CreateInvalidationInput {
|
|
s.InvalidationBatch = v
|
|
return s
|
|
}
|
|
|
|
// The returned result of the corresponding request.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/CreateInvalidationResult
|
|
type CreateInvalidationOutput struct {
|
|
_ struct{} `type:"structure" payload:"Invalidation"`
|
|
|
|
// The invalidation's information.
|
|
Invalidation *Invalidation `type:"structure"`
|
|
|
|
// The fully qualified URI of the distribution and invalidation batch request,
|
|
// including the Invalidation ID.
|
|
Location *string `location:"header" locationName:"Location" type:"string"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s CreateInvalidationOutput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s CreateInvalidationOutput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// SetInvalidation sets the Invalidation field's value.
|
|
func (s *CreateInvalidationOutput) SetInvalidation(v *Invalidation) *CreateInvalidationOutput {
|
|
s.Invalidation = v
|
|
return s
|
|
}
|
|
|
|
// SetLocation sets the Location field's value.
|
|
func (s *CreateInvalidationOutput) SetLocation(v string) *CreateInvalidationOutput {
|
|
s.Location = &v
|
|
return s
|
|
}
|
|
|
|
// The request to create a new streaming distribution.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/CreateStreamingDistributionRequest
|
|
type CreateStreamingDistributionInput struct {
|
|
_ struct{} `type:"structure" payload:"StreamingDistributionConfig"`
|
|
|
|
// The streaming distribution's configuration information.
|
|
//
|
|
// StreamingDistributionConfig is a required field
|
|
StreamingDistributionConfig *StreamingDistributionConfig `locationName:"StreamingDistributionConfig" type:"structure" required:"true" xmlURI:"http://cloudfront.amazonaws.com/doc/2017-03-25/"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s CreateStreamingDistributionInput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s CreateStreamingDistributionInput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *CreateStreamingDistributionInput) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "CreateStreamingDistributionInput"}
|
|
if s.StreamingDistributionConfig == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("StreamingDistributionConfig"))
|
|
}
|
|
if s.StreamingDistributionConfig != nil {
|
|
if err := s.StreamingDistributionConfig.Validate(); err != nil {
|
|
invalidParams.AddNested("StreamingDistributionConfig", err.(request.ErrInvalidParams))
|
|
}
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetStreamingDistributionConfig sets the StreamingDistributionConfig field's value.
|
|
func (s *CreateStreamingDistributionInput) SetStreamingDistributionConfig(v *StreamingDistributionConfig) *CreateStreamingDistributionInput {
|
|
s.StreamingDistributionConfig = v
|
|
return s
|
|
}
|
|
|
|
// The returned result of the corresponding request.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/CreateStreamingDistributionResult
|
|
type CreateStreamingDistributionOutput struct {
|
|
_ struct{} `type:"structure" payload:"StreamingDistribution"`
|
|
|
|
// The current version of the streaming distribution created.
|
|
ETag *string `location:"header" locationName:"ETag" type:"string"`
|
|
|
|
// The fully qualified URI of the new streaming distribution resource just created.
|
|
// For example: https://cloudfront.amazonaws.com/2010-11-01/streaming-distribution/EGTXBD79H29TRA8.
|
|
Location *string `location:"header" locationName:"Location" type:"string"`
|
|
|
|
// The streaming distribution's information.
|
|
StreamingDistribution *StreamingDistribution `type:"structure"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s CreateStreamingDistributionOutput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s CreateStreamingDistributionOutput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// SetETag sets the ETag field's value.
|
|
func (s *CreateStreamingDistributionOutput) SetETag(v string) *CreateStreamingDistributionOutput {
|
|
s.ETag = &v
|
|
return s
|
|
}
|
|
|
|
// SetLocation sets the Location field's value.
|
|
func (s *CreateStreamingDistributionOutput) SetLocation(v string) *CreateStreamingDistributionOutput {
|
|
s.Location = &v
|
|
return s
|
|
}
|
|
|
|
// SetStreamingDistribution sets the StreamingDistribution field's value.
|
|
func (s *CreateStreamingDistributionOutput) SetStreamingDistribution(v *StreamingDistribution) *CreateStreamingDistributionOutput {
|
|
s.StreamingDistribution = v
|
|
return s
|
|
}
|
|
|
|
// The request to create a new streaming distribution with tags.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/CreateStreamingDistributionWithTagsRequest
|
|
type CreateStreamingDistributionWithTagsInput struct {
|
|
_ struct{} `type:"structure" payload:"StreamingDistributionConfigWithTags"`
|
|
|
|
// The streaming distribution's configuration information.
|
|
//
|
|
// StreamingDistributionConfigWithTags is a required field
|
|
StreamingDistributionConfigWithTags *StreamingDistributionConfigWithTags `locationName:"StreamingDistributionConfigWithTags" type:"structure" required:"true" xmlURI:"http://cloudfront.amazonaws.com/doc/2017-03-25/"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s CreateStreamingDistributionWithTagsInput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s CreateStreamingDistributionWithTagsInput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *CreateStreamingDistributionWithTagsInput) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "CreateStreamingDistributionWithTagsInput"}
|
|
if s.StreamingDistributionConfigWithTags == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("StreamingDistributionConfigWithTags"))
|
|
}
|
|
if s.StreamingDistributionConfigWithTags != nil {
|
|
if err := s.StreamingDistributionConfigWithTags.Validate(); err != nil {
|
|
invalidParams.AddNested("StreamingDistributionConfigWithTags", err.(request.ErrInvalidParams))
|
|
}
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetStreamingDistributionConfigWithTags sets the StreamingDistributionConfigWithTags field's value.
|
|
func (s *CreateStreamingDistributionWithTagsInput) SetStreamingDistributionConfigWithTags(v *StreamingDistributionConfigWithTags) *CreateStreamingDistributionWithTagsInput {
|
|
s.StreamingDistributionConfigWithTags = v
|
|
return s
|
|
}
|
|
|
|
// The returned result of the corresponding request.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/CreateStreamingDistributionWithTagsResult
|
|
type CreateStreamingDistributionWithTagsOutput struct {
|
|
_ struct{} `type:"structure" payload:"StreamingDistribution"`
|
|
|
|
ETag *string `location:"header" locationName:"ETag" type:"string"`
|
|
|
|
// The fully qualified URI of the new streaming distribution resource just created.
|
|
// For example: https://cloudfront.amazonaws.com/2010-11-01/streaming-distribution/EGTXBD79H29TRA8.
|
|
Location *string `location:"header" locationName:"Location" type:"string"`
|
|
|
|
// The streaming distribution's information.
|
|
StreamingDistribution *StreamingDistribution `type:"structure"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s CreateStreamingDistributionWithTagsOutput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s CreateStreamingDistributionWithTagsOutput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// SetETag sets the ETag field's value.
|
|
func (s *CreateStreamingDistributionWithTagsOutput) SetETag(v string) *CreateStreamingDistributionWithTagsOutput {
|
|
s.ETag = &v
|
|
return s
|
|
}
|
|
|
|
// SetLocation sets the Location field's value.
|
|
func (s *CreateStreamingDistributionWithTagsOutput) SetLocation(v string) *CreateStreamingDistributionWithTagsOutput {
|
|
s.Location = &v
|
|
return s
|
|
}
|
|
|
|
// SetStreamingDistribution sets the StreamingDistribution field's value.
|
|
func (s *CreateStreamingDistributionWithTagsOutput) SetStreamingDistribution(v *StreamingDistribution) *CreateStreamingDistributionWithTagsOutput {
|
|
s.StreamingDistribution = v
|
|
return s
|
|
}
|
|
|
|
// A complex type that controls:
|
|
//
|
|
// * Whether CloudFront replaces HTTP status codes in the 4xx and 5xx range
|
|
// with custom error messages before returning the response to the viewer.
|
|
//
|
|
//
|
|
// * How long CloudFront caches HTTP status codes in the 4xx and 5xx range.
|
|
//
|
|
// For more information about custom error pages, see Customizing Error Responses
|
|
// (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/custom-error-pages.html)
|
|
// in the Amazon CloudFront Developer Guide.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/CustomErrorResponse
|
|
type CustomErrorResponse struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// The minimum amount of time, in seconds, that you want CloudFront to cache
|
|
// the HTTP status code specified in ErrorCode. When this time period has elapsed,
|
|
// CloudFront queries your origin to see whether the problem that caused the
|
|
// error has been resolved and the requested object is now available.
|
|
//
|
|
// If you don't want to specify a value, include an empty element, <ErrorCachingMinTTL>,
|
|
// in the XML document.
|
|
//
|
|
// For more information, see Customizing Error Responses (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/custom-error-pages.html)
|
|
// in the Amazon CloudFront Developer Guide.
|
|
ErrorCachingMinTTL *int64 `type:"long"`
|
|
|
|
// The HTTP status code for which you want to specify a custom error page and/or
|
|
// a caching duration.
|
|
//
|
|
// ErrorCode is a required field
|
|
ErrorCode *int64 `type:"integer" required:"true"`
|
|
|
|
// The HTTP status code that you want CloudFront to return to the viewer along
|
|
// with the custom error page. There are a variety of reasons that you might
|
|
// want CloudFront to return a status code different from the status code that
|
|
// your origin returned to CloudFront, for example:
|
|
//
|
|
// * Some Internet devices (some firewalls and corporate proxies, for example)
|
|
// intercept HTTP 4xx and 5xx and prevent the response from being returned
|
|
// to the viewer. If you substitute 200, the response typically won't be
|
|
// intercepted.
|
|
//
|
|
// * If you don't care about distinguishing among different client errors
|
|
// or server errors, you can specify 400 or 500 as the ResponseCode for all
|
|
// 4xx or 5xx errors.
|
|
//
|
|
// * You might want to return a 200 status code (OK) and static website so
|
|
// your customers don't know that your website is down.
|
|
//
|
|
// If you specify a value for ResponseCode, you must also specify a value for
|
|
// ResponsePagePath. If you don't want to specify a value, include an empty
|
|
// element, <ResponseCode>, in the XML document.
|
|
ResponseCode *string `type:"string"`
|
|
|
|
// The path to the custom error page that you want CloudFront to return to a
|
|
// viewer when your origin returns the HTTP status code specified by ErrorCode,
|
|
// for example, /4xx-errors/403-forbidden.html. If you want to store your objects
|
|
// and your custom error pages in different locations, your distribution must
|
|
// include a cache behavior for which the following is true:
|
|
//
|
|
// * The value of PathPattern matches the path to your custom error messages.
|
|
// For example, suppose you saved custom error pages for 4xx errors in an
|
|
// Amazon S3 bucket in a directory named /4xx-errors. Your distribution must
|
|
// include a cache behavior for which the path pattern routes requests for
|
|
// your custom error pages to that location, for example, /4xx-errors/*.
|
|
//
|
|
//
|
|
// * The value of TargetOriginId specifies the value of the ID element for
|
|
// the origin that contains your custom error pages.
|
|
//
|
|
// If you specify a value for ResponsePagePath, you must also specify a value
|
|
// for ResponseCode. If you don't want to specify a value, include an empty
|
|
// element, <ResponsePagePath>, in the XML document.
|
|
//
|
|
// We recommend that you store custom error pages in an Amazon S3 bucket. If
|
|
// you store custom error pages on an HTTP server and the server starts to return
|
|
// 5xx errors, CloudFront can't get the files that you want to return to viewers
|
|
// because the origin server is unavailable.
|
|
ResponsePagePath *string `type:"string"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s CustomErrorResponse) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s CustomErrorResponse) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *CustomErrorResponse) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "CustomErrorResponse"}
|
|
if s.ErrorCode == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("ErrorCode"))
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetErrorCachingMinTTL sets the ErrorCachingMinTTL field's value.
|
|
func (s *CustomErrorResponse) SetErrorCachingMinTTL(v int64) *CustomErrorResponse {
|
|
s.ErrorCachingMinTTL = &v
|
|
return s
|
|
}
|
|
|
|
// SetErrorCode sets the ErrorCode field's value.
|
|
func (s *CustomErrorResponse) SetErrorCode(v int64) *CustomErrorResponse {
|
|
s.ErrorCode = &v
|
|
return s
|
|
}
|
|
|
|
// SetResponseCode sets the ResponseCode field's value.
|
|
func (s *CustomErrorResponse) SetResponseCode(v string) *CustomErrorResponse {
|
|
s.ResponseCode = &v
|
|
return s
|
|
}
|
|
|
|
// SetResponsePagePath sets the ResponsePagePath field's value.
|
|
func (s *CustomErrorResponse) SetResponsePagePath(v string) *CustomErrorResponse {
|
|
s.ResponsePagePath = &v
|
|
return s
|
|
}
|
|
|
|
// A complex type that controls:
|
|
//
|
|
// * Whether CloudFront replaces HTTP status codes in the 4xx and 5xx range
|
|
// with custom error messages before returning the response to the viewer.
|
|
//
|
|
// * How long CloudFront caches HTTP status codes in the 4xx and 5xx range.
|
|
//
|
|
// For more information about custom error pages, see Customizing Error Responses
|
|
// (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/custom-error-pages.html)
|
|
// in the Amazon CloudFront Developer Guide.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/CustomErrorResponses
|
|
type CustomErrorResponses struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// A complex type that contains a CustomErrorResponse element for each HTTP
|
|
// status code for which you want to specify a custom error page and/or a caching
|
|
// duration.
|
|
Items []*CustomErrorResponse `locationNameList:"CustomErrorResponse" type:"list"`
|
|
|
|
// The number of HTTP status codes for which you want to specify a custom error
|
|
// page and/or a caching duration. If Quantity is 0, you can omit Items.
|
|
//
|
|
// Quantity is a required field
|
|
Quantity *int64 `type:"integer" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s CustomErrorResponses) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s CustomErrorResponses) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *CustomErrorResponses) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "CustomErrorResponses"}
|
|
if s.Quantity == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Quantity"))
|
|
}
|
|
if s.Items != nil {
|
|
for i, v := range s.Items {
|
|
if v == nil {
|
|
continue
|
|
}
|
|
if err := v.Validate(); err != nil {
|
|
invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Items", i), err.(request.ErrInvalidParams))
|
|
}
|
|
}
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetItems sets the Items field's value.
|
|
func (s *CustomErrorResponses) SetItems(v []*CustomErrorResponse) *CustomErrorResponses {
|
|
s.Items = v
|
|
return s
|
|
}
|
|
|
|
// SetQuantity sets the Quantity field's value.
|
|
func (s *CustomErrorResponses) SetQuantity(v int64) *CustomErrorResponses {
|
|
s.Quantity = &v
|
|
return s
|
|
}
|
|
|
|
// A complex type that contains the list of Custom Headers for each origin.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/CustomHeaders
|
|
type CustomHeaders struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// Optional: A list that contains one OriginCustomHeader element for each custom
|
|
// header that you want CloudFront to forward to the origin. If Quantity is
|
|
// 0, omit Items.
|
|
Items []*OriginCustomHeader `locationNameList:"OriginCustomHeader" type:"list"`
|
|
|
|
// The number of custom headers, if any, for this distribution.
|
|
//
|
|
// Quantity is a required field
|
|
Quantity *int64 `type:"integer" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s CustomHeaders) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s CustomHeaders) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *CustomHeaders) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "CustomHeaders"}
|
|
if s.Quantity == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Quantity"))
|
|
}
|
|
if s.Items != nil {
|
|
for i, v := range s.Items {
|
|
if v == nil {
|
|
continue
|
|
}
|
|
if err := v.Validate(); err != nil {
|
|
invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Items", i), err.(request.ErrInvalidParams))
|
|
}
|
|
}
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetItems sets the Items field's value.
|
|
func (s *CustomHeaders) SetItems(v []*OriginCustomHeader) *CustomHeaders {
|
|
s.Items = v
|
|
return s
|
|
}
|
|
|
|
// SetQuantity sets the Quantity field's value.
|
|
func (s *CustomHeaders) SetQuantity(v int64) *CustomHeaders {
|
|
s.Quantity = &v
|
|
return s
|
|
}
|
|
|
|
// A customer origin.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/CustomOriginConfig
|
|
type CustomOriginConfig struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// The HTTP port the custom origin listens on.
|
|
//
|
|
// HTTPPort is a required field
|
|
HTTPPort *int64 `type:"integer" required:"true"`
|
|
|
|
// The HTTPS port the custom origin listens on.
|
|
//
|
|
// HTTPSPort is a required field
|
|
HTTPSPort *int64 `type:"integer" required:"true"`
|
|
|
|
// You can create a custom keep-alive timeout. All timeout units are in seconds.
|
|
// The default keep-alive timeout is 5 seconds, but you can configure custom
|
|
// timeout lengths using the CloudFront API. The minimum timeout length is 1
|
|
// second; the maximum is 60 seconds.
|
|
//
|
|
// If you need to increase the maximum time limit, contact the AWS Support Center
|
|
// (https://console.aws.amazon.com/support/home#/).
|
|
OriginKeepaliveTimeout *int64 `type:"integer"`
|
|
|
|
// The origin protocol policy to apply to your origin.
|
|
//
|
|
// OriginProtocolPolicy is a required field
|
|
OriginProtocolPolicy *string `type:"string" required:"true" enum:"OriginProtocolPolicy"`
|
|
|
|
// You can create a custom origin read timeout. All timeout units are in seconds.
|
|
// The default origin read timeout is 30 seconds, but you can configure custom
|
|
// timeout lengths using the CloudFront API. The minimum timeout length is 4
|
|
// seconds; the maximum is 60 seconds.
|
|
//
|
|
// If you need to increase the maximum time limit, contact the AWS Support Center
|
|
// (https://console.aws.amazon.com/support/home#/).
|
|
OriginReadTimeout *int64 `type:"integer"`
|
|
|
|
// The SSL/TLS protocols that you want CloudFront to use when communicating
|
|
// with your origin over HTTPS.
|
|
OriginSslProtocols *OriginSslProtocols `type:"structure"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s CustomOriginConfig) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s CustomOriginConfig) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *CustomOriginConfig) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "CustomOriginConfig"}
|
|
if s.HTTPPort == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("HTTPPort"))
|
|
}
|
|
if s.HTTPSPort == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("HTTPSPort"))
|
|
}
|
|
if s.OriginProtocolPolicy == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("OriginProtocolPolicy"))
|
|
}
|
|
if s.OriginSslProtocols != nil {
|
|
if err := s.OriginSslProtocols.Validate(); err != nil {
|
|
invalidParams.AddNested("OriginSslProtocols", err.(request.ErrInvalidParams))
|
|
}
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetHTTPPort sets the HTTPPort field's value.
|
|
func (s *CustomOriginConfig) SetHTTPPort(v int64) *CustomOriginConfig {
|
|
s.HTTPPort = &v
|
|
return s
|
|
}
|
|
|
|
// SetHTTPSPort sets the HTTPSPort field's value.
|
|
func (s *CustomOriginConfig) SetHTTPSPort(v int64) *CustomOriginConfig {
|
|
s.HTTPSPort = &v
|
|
return s
|
|
}
|
|
|
|
// SetOriginKeepaliveTimeout sets the OriginKeepaliveTimeout field's value.
|
|
func (s *CustomOriginConfig) SetOriginKeepaliveTimeout(v int64) *CustomOriginConfig {
|
|
s.OriginKeepaliveTimeout = &v
|
|
return s
|
|
}
|
|
|
|
// SetOriginProtocolPolicy sets the OriginProtocolPolicy field's value.
|
|
func (s *CustomOriginConfig) SetOriginProtocolPolicy(v string) *CustomOriginConfig {
|
|
s.OriginProtocolPolicy = &v
|
|
return s
|
|
}
|
|
|
|
// SetOriginReadTimeout sets the OriginReadTimeout field's value.
|
|
func (s *CustomOriginConfig) SetOriginReadTimeout(v int64) *CustomOriginConfig {
|
|
s.OriginReadTimeout = &v
|
|
return s
|
|
}
|
|
|
|
// SetOriginSslProtocols sets the OriginSslProtocols field's value.
|
|
func (s *CustomOriginConfig) SetOriginSslProtocols(v *OriginSslProtocols) *CustomOriginConfig {
|
|
s.OriginSslProtocols = v
|
|
return s
|
|
}
|
|
|
|
// A complex type that describes the default cache behavior if you don't specify
|
|
// a CacheBehavior element or if files don't match any of the values of PathPattern
|
|
// in CacheBehavior elements. You must create exactly one default cache behavior.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/DefaultCacheBehavior
|
|
type DefaultCacheBehavior struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// A complex type that controls which HTTP methods CloudFront processes and
|
|
// forwards to your Amazon S3 bucket or your custom origin. There are three
|
|
// choices:
|
|
//
|
|
// * CloudFront forwards only GET and HEAD requests.
|
|
//
|
|
// * CloudFront forwards only GET, HEAD, and OPTIONS requests.
|
|
//
|
|
// * CloudFront forwards GET, HEAD, OPTIONS, PUT, PATCH, POST, and DELETE
|
|
// requests.
|
|
//
|
|
// If you pick the third choice, you may need to restrict access to your Amazon
|
|
// S3 bucket or to your custom origin so users can't perform operations that
|
|
// you don't want them to. For example, you might not want users to have permissions
|
|
// to delete objects from your origin.
|
|
AllowedMethods *AllowedMethods `type:"structure"`
|
|
|
|
// Whether you want CloudFront to automatically compress certain files for this
|
|
// cache behavior. If so, specify true; if not, specify false. For more information,
|
|
// see Serving Compressed Files (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/ServingCompressedFiles.html)
|
|
// in the Amazon CloudFront Developer Guide.
|
|
Compress *bool `type:"boolean"`
|
|
|
|
// The default amount of time that you want objects to stay in CloudFront caches
|
|
// before CloudFront forwards another request to your origin to determine whether
|
|
// the object has been updated. The value that you specify applies only when
|
|
// your origin does not add HTTP headers such as Cache-Control max-age, Cache-Control
|
|
// s-maxage, and Expires to objects. For more information, see Specifying How
|
|
// Long Objects and Errors Stay in a CloudFront Edge Cache (Expiration) (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html)
|
|
// in the Amazon CloudFront Developer Guide.
|
|
DefaultTTL *int64 `type:"long"`
|
|
|
|
// A complex type that specifies how CloudFront handles query strings and cookies.
|
|
//
|
|
// ForwardedValues is a required field
|
|
ForwardedValues *ForwardedValues `type:"structure" required:"true"`
|
|
|
|
// A complex type that contains zero or more Lambda function associations for
|
|
// a cache behavior.
|
|
LambdaFunctionAssociations *LambdaFunctionAssociations `type:"structure"`
|
|
|
|
MaxTTL *int64 `type:"long"`
|
|
|
|
// The minimum amount of time that you want objects to stay in CloudFront caches
|
|
// before CloudFront forwards another request to your origin to determine whether
|
|
// the object has been updated. For more information, see Specifying How Long
|
|
// Objects and Errors Stay in a CloudFront Edge Cache (Expiration) (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html)
|
|
// in the Amazon Amazon CloudFront Developer Guide.
|
|
//
|
|
// You must specify 0 for MinTTL if you configure CloudFront to forward all
|
|
// headers to your origin (under Headers, if you specify 1 for Quantity and
|
|
// * for Name).
|
|
//
|
|
// MinTTL is a required field
|
|
MinTTL *int64 `type:"long" required:"true"`
|
|
|
|
// Indicates whether you want to distribute media files in the Microsoft Smooth
|
|
// Streaming format using the origin that is associated with this cache behavior.
|
|
// If so, specify true; if not, specify false. If you specify true for SmoothStreaming,
|
|
// you can still distribute other content using this cache behavior if the content
|
|
// matches the value of PathPattern.
|
|
SmoothStreaming *bool `type:"boolean"`
|
|
|
|
// The value of ID for the origin that you want CloudFront to route requests
|
|
// to when a request matches the path pattern either for a cache behavior or
|
|
// for the default cache behavior.
|
|
//
|
|
// TargetOriginId is a required field
|
|
TargetOriginId *string `type:"string" required:"true"`
|
|
|
|
// A complex type that specifies the AWS accounts, if any, that you want to
|
|
// allow to create signed URLs for private content.
|
|
//
|
|
// If you want to require signed URLs in requests for objects in the target
|
|
// origin that match the PathPattern for this cache behavior, specify true for
|
|
// Enabled, and specify the applicable values for Quantity and Items. For more
|
|
// information, see Serving Private Content through CloudFront (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html)
|
|
// in the Amazon Amazon CloudFront Developer Guide.
|
|
//
|
|
// If you don't want to require signed URLs in requests for objects that match
|
|
// PathPattern, specify false for Enabled and 0 for Quantity. Omit Items.
|
|
//
|
|
// To add, change, or remove one or more trusted signers, change Enabled to
|
|
// true (if it's currently false), change Quantity as applicable, and specify
|
|
// all of the trusted signers that you want to include in the updated distribution.
|
|
//
|
|
// TrustedSigners is a required field
|
|
TrustedSigners *TrustedSigners `type:"structure" required:"true"`
|
|
|
|
// The protocol that viewers can use to access the files in the origin specified
|
|
// by TargetOriginId when a request matches the path pattern in PathPattern.
|
|
// You can specify the following options:
|
|
//
|
|
// * allow-all: Viewers can use HTTP or HTTPS.
|
|
//
|
|
// * redirect-to-https: If a viewer submits an HTTP request, CloudFront returns
|
|
// an HTTP status code of 301 (Moved Permanently) to the viewer along with
|
|
// the HTTPS URL. The viewer then resubmits the request using the new URL.
|
|
//
|
|
// * https-only: If a viewer sends an HTTP request, CloudFront returns an
|
|
// HTTP status code of 403 (Forbidden).
|
|
//
|
|
// For more information about requiring the HTTPS protocol, see Using an HTTPS
|
|
// Connection to Access Your Objects (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/SecureConnections.html)
|
|
// in the Amazon CloudFront Developer Guide.
|
|
//
|
|
// The only way to guarantee that viewers retrieve an object that was fetched
|
|
// from the origin using HTTPS is never to use any other protocol to fetch the
|
|
// object. If you have recently changed from HTTP to HTTPS, we recommend that
|
|
// you clear your objects' cache because cached objects are protocol agnostic.
|
|
// That means that an edge location will return an object from the cache regardless
|
|
// of whether the current request protocol matches the protocol used previously.
|
|
// For more information, see Specifying How Long Objects and Errors Stay in
|
|
// a CloudFront Edge Cache (Expiration) (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html)
|
|
// in the Amazon CloudFront Developer Guide.
|
|
//
|
|
// ViewerProtocolPolicy is a required field
|
|
ViewerProtocolPolicy *string `type:"string" required:"true" enum:"ViewerProtocolPolicy"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s DefaultCacheBehavior) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s DefaultCacheBehavior) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *DefaultCacheBehavior) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "DefaultCacheBehavior"}
|
|
if s.ForwardedValues == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("ForwardedValues"))
|
|
}
|
|
if s.MinTTL == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("MinTTL"))
|
|
}
|
|
if s.TargetOriginId == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("TargetOriginId"))
|
|
}
|
|
if s.TrustedSigners == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("TrustedSigners"))
|
|
}
|
|
if s.ViewerProtocolPolicy == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("ViewerProtocolPolicy"))
|
|
}
|
|
if s.AllowedMethods != nil {
|
|
if err := s.AllowedMethods.Validate(); err != nil {
|
|
invalidParams.AddNested("AllowedMethods", err.(request.ErrInvalidParams))
|
|
}
|
|
}
|
|
if s.ForwardedValues != nil {
|
|
if err := s.ForwardedValues.Validate(); err != nil {
|
|
invalidParams.AddNested("ForwardedValues", err.(request.ErrInvalidParams))
|
|
}
|
|
}
|
|
if s.LambdaFunctionAssociations != nil {
|
|
if err := s.LambdaFunctionAssociations.Validate(); err != nil {
|
|
invalidParams.AddNested("LambdaFunctionAssociations", err.(request.ErrInvalidParams))
|
|
}
|
|
}
|
|
if s.TrustedSigners != nil {
|
|
if err := s.TrustedSigners.Validate(); err != nil {
|
|
invalidParams.AddNested("TrustedSigners", err.(request.ErrInvalidParams))
|
|
}
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetAllowedMethods sets the AllowedMethods field's value.
|
|
func (s *DefaultCacheBehavior) SetAllowedMethods(v *AllowedMethods) *DefaultCacheBehavior {
|
|
s.AllowedMethods = v
|
|
return s
|
|
}
|
|
|
|
// SetCompress sets the Compress field's value.
|
|
func (s *DefaultCacheBehavior) SetCompress(v bool) *DefaultCacheBehavior {
|
|
s.Compress = &v
|
|
return s
|
|
}
|
|
|
|
// SetDefaultTTL sets the DefaultTTL field's value.
|
|
func (s *DefaultCacheBehavior) SetDefaultTTL(v int64) *DefaultCacheBehavior {
|
|
s.DefaultTTL = &v
|
|
return s
|
|
}
|
|
|
|
// SetForwardedValues sets the ForwardedValues field's value.
|
|
func (s *DefaultCacheBehavior) SetForwardedValues(v *ForwardedValues) *DefaultCacheBehavior {
|
|
s.ForwardedValues = v
|
|
return s
|
|
}
|
|
|
|
// SetLambdaFunctionAssociations sets the LambdaFunctionAssociations field's value.
|
|
func (s *DefaultCacheBehavior) SetLambdaFunctionAssociations(v *LambdaFunctionAssociations) *DefaultCacheBehavior {
|
|
s.LambdaFunctionAssociations = v
|
|
return s
|
|
}
|
|
|
|
// SetMaxTTL sets the MaxTTL field's value.
|
|
func (s *DefaultCacheBehavior) SetMaxTTL(v int64) *DefaultCacheBehavior {
|
|
s.MaxTTL = &v
|
|
return s
|
|
}
|
|
|
|
// SetMinTTL sets the MinTTL field's value.
|
|
func (s *DefaultCacheBehavior) SetMinTTL(v int64) *DefaultCacheBehavior {
|
|
s.MinTTL = &v
|
|
return s
|
|
}
|
|
|
|
// SetSmoothStreaming sets the SmoothStreaming field's value.
|
|
func (s *DefaultCacheBehavior) SetSmoothStreaming(v bool) *DefaultCacheBehavior {
|
|
s.SmoothStreaming = &v
|
|
return s
|
|
}
|
|
|
|
// SetTargetOriginId sets the TargetOriginId field's value.
|
|
func (s *DefaultCacheBehavior) SetTargetOriginId(v string) *DefaultCacheBehavior {
|
|
s.TargetOriginId = &v
|
|
return s
|
|
}
|
|
|
|
// SetTrustedSigners sets the TrustedSigners field's value.
|
|
func (s *DefaultCacheBehavior) SetTrustedSigners(v *TrustedSigners) *DefaultCacheBehavior {
|
|
s.TrustedSigners = v
|
|
return s
|
|
}
|
|
|
|
// SetViewerProtocolPolicy sets the ViewerProtocolPolicy field's value.
|
|
func (s *DefaultCacheBehavior) SetViewerProtocolPolicy(v string) *DefaultCacheBehavior {
|
|
s.ViewerProtocolPolicy = &v
|
|
return s
|
|
}
|
|
|
|
// Deletes a origin access identity.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/DeleteCloudFrontOriginAccessIdentityRequest
|
|
type DeleteCloudFrontOriginAccessIdentityInput struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// The origin access identity's ID.
|
|
//
|
|
// Id is a required field
|
|
Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
|
|
|
|
// The value of the ETag header you received from a previous GET or PUT request.
|
|
// For example: E2QWRUHAPOMQZL.
|
|
IfMatch *string `location:"header" locationName:"If-Match" type:"string"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s DeleteCloudFrontOriginAccessIdentityInput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s DeleteCloudFrontOriginAccessIdentityInput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *DeleteCloudFrontOriginAccessIdentityInput) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "DeleteCloudFrontOriginAccessIdentityInput"}
|
|
if s.Id == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Id"))
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetId sets the Id field's value.
|
|
func (s *DeleteCloudFrontOriginAccessIdentityInput) SetId(v string) *DeleteCloudFrontOriginAccessIdentityInput {
|
|
s.Id = &v
|
|
return s
|
|
}
|
|
|
|
// SetIfMatch sets the IfMatch field's value.
|
|
func (s *DeleteCloudFrontOriginAccessIdentityInput) SetIfMatch(v string) *DeleteCloudFrontOriginAccessIdentityInput {
|
|
s.IfMatch = &v
|
|
return s
|
|
}
|
|
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/DeleteCloudFrontOriginAccessIdentityOutput
|
|
type DeleteCloudFrontOriginAccessIdentityOutput struct {
|
|
_ struct{} `type:"structure"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s DeleteCloudFrontOriginAccessIdentityOutput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s DeleteCloudFrontOriginAccessIdentityOutput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// 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 (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/HowToDeleteDistribution.html)
|
|
// in the Amazon CloudFront Developer Guide.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/DeleteDistributionRequest
|
|
type DeleteDistributionInput struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// The distribution ID.
|
|
//
|
|
// Id is a required field
|
|
Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
|
|
|
|
// The value of the ETag header that you received when you disabled the distribution.
|
|
// For example: E2QWRUHAPOMQZL.
|
|
IfMatch *string `location:"header" locationName:"If-Match" type:"string"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s DeleteDistributionInput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s DeleteDistributionInput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *DeleteDistributionInput) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "DeleteDistributionInput"}
|
|
if s.Id == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Id"))
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetId sets the Id field's value.
|
|
func (s *DeleteDistributionInput) SetId(v string) *DeleteDistributionInput {
|
|
s.Id = &v
|
|
return s
|
|
}
|
|
|
|
// SetIfMatch sets the IfMatch field's value.
|
|
func (s *DeleteDistributionInput) SetIfMatch(v string) *DeleteDistributionInput {
|
|
s.IfMatch = &v
|
|
return s
|
|
}
|
|
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/DeleteDistributionOutput
|
|
type DeleteDistributionOutput struct {
|
|
_ struct{} `type:"structure"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s DeleteDistributionOutput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s DeleteDistributionOutput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/DeleteServiceLinkedRoleRequest
|
|
type DeleteServiceLinkedRoleInput struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// RoleName is a required field
|
|
RoleName *string `location:"uri" locationName:"RoleName" type:"string" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s DeleteServiceLinkedRoleInput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s DeleteServiceLinkedRoleInput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *DeleteServiceLinkedRoleInput) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "DeleteServiceLinkedRoleInput"}
|
|
if s.RoleName == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("RoleName"))
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetRoleName sets the RoleName field's value.
|
|
func (s *DeleteServiceLinkedRoleInput) SetRoleName(v string) *DeleteServiceLinkedRoleInput {
|
|
s.RoleName = &v
|
|
return s
|
|
}
|
|
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/DeleteServiceLinkedRoleOutput
|
|
type DeleteServiceLinkedRoleOutput struct {
|
|
_ struct{} `type:"structure"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s DeleteServiceLinkedRoleOutput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s DeleteServiceLinkedRoleOutput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// The request to delete a streaming distribution.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/DeleteStreamingDistributionRequest
|
|
type DeleteStreamingDistributionInput struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// The distribution ID.
|
|
//
|
|
// Id is a required field
|
|
Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
|
|
|
|
// The value of the ETag header that you received when you disabled the streaming
|
|
// distribution. For example: E2QWRUHAPOMQZL.
|
|
IfMatch *string `location:"header" locationName:"If-Match" type:"string"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s DeleteStreamingDistributionInput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s DeleteStreamingDistributionInput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *DeleteStreamingDistributionInput) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "DeleteStreamingDistributionInput"}
|
|
if s.Id == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Id"))
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetId sets the Id field's value.
|
|
func (s *DeleteStreamingDistributionInput) SetId(v string) *DeleteStreamingDistributionInput {
|
|
s.Id = &v
|
|
return s
|
|
}
|
|
|
|
// SetIfMatch sets the IfMatch field's value.
|
|
func (s *DeleteStreamingDistributionInput) SetIfMatch(v string) *DeleteStreamingDistributionInput {
|
|
s.IfMatch = &v
|
|
return s
|
|
}
|
|
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/DeleteStreamingDistributionOutput
|
|
type DeleteStreamingDistributionOutput struct {
|
|
_ struct{} `type:"structure"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s DeleteStreamingDistributionOutput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s DeleteStreamingDistributionOutput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// The distribution's information.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/Distribution
|
|
type Distribution struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// The ARN (Amazon Resource Name) for the distribution. For example: arn:aws:cloudfront::123456789012:distribution/EDFDVBD632BHDS5,
|
|
// where 123456789012 is your AWS account ID.
|
|
//
|
|
// ARN is a required field
|
|
ARN *string `type:"string" required:"true"`
|
|
|
|
// CloudFront automatically adds this element to the response only if you've
|
|
// set up the distribution to serve private content with signed URLs. The element
|
|
// lists the key pair IDs that CloudFront is aware of for each trusted signer.
|
|
// The Signer child element lists the AWS account number of the trusted signer
|
|
// (or an empty Self element if the signer is you). The Signer element also
|
|
// includes the IDs of any active key pairs associated with the trusted signer's
|
|
// AWS account. If no KeyPairId element appears for a Signer, that signer can't
|
|
// create working signed URLs.
|
|
//
|
|
// ActiveTrustedSigners is a required field
|
|
ActiveTrustedSigners *ActiveTrustedSigners `type:"structure" required:"true"`
|
|
|
|
// The current configuration information for the distribution. Send a GET request
|
|
// to the /CloudFront API version/distribution ID/config resource.
|
|
//
|
|
// DistributionConfig is a required field
|
|
DistributionConfig *DistributionConfig `type:"structure" required:"true"`
|
|
|
|
// The domain name corresponding to the distribution, for example, d111111abcdef8.cloudfront.net.
|
|
//
|
|
// DomainName is a required field
|
|
DomainName *string `type:"string" required:"true"`
|
|
|
|
// The identifier for the distribution. For example: EDFDVBD632BHDS5.
|
|
//
|
|
// Id is a required field
|
|
Id *string `type:"string" required:"true"`
|
|
|
|
// The number of invalidation batches currently in progress.
|
|
//
|
|
// InProgressInvalidationBatches is a required field
|
|
InProgressInvalidationBatches *int64 `type:"integer" required:"true"`
|
|
|
|
// The date and time the distribution was last modified.
|
|
//
|
|
// LastModifiedTime is a required field
|
|
LastModifiedTime *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"`
|
|
|
|
// This response element indicates the current status of the distribution. When
|
|
// the status is Deployed, the distribution's information is fully propagated
|
|
// to all CloudFront edge locations.
|
|
//
|
|
// Status is a required field
|
|
Status *string `type:"string" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s Distribution) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s Distribution) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// SetARN sets the ARN field's value.
|
|
func (s *Distribution) SetARN(v string) *Distribution {
|
|
s.ARN = &v
|
|
return s
|
|
}
|
|
|
|
// SetActiveTrustedSigners sets the ActiveTrustedSigners field's value.
|
|
func (s *Distribution) SetActiveTrustedSigners(v *ActiveTrustedSigners) *Distribution {
|
|
s.ActiveTrustedSigners = v
|
|
return s
|
|
}
|
|
|
|
// SetDistributionConfig sets the DistributionConfig field's value.
|
|
func (s *Distribution) SetDistributionConfig(v *DistributionConfig) *Distribution {
|
|
s.DistributionConfig = v
|
|
return s
|
|
}
|
|
|
|
// SetDomainName sets the DomainName field's value.
|
|
func (s *Distribution) SetDomainName(v string) *Distribution {
|
|
s.DomainName = &v
|
|
return s
|
|
}
|
|
|
|
// SetId sets the Id field's value.
|
|
func (s *Distribution) SetId(v string) *Distribution {
|
|
s.Id = &v
|
|
return s
|
|
}
|
|
|
|
// SetInProgressInvalidationBatches sets the InProgressInvalidationBatches field's value.
|
|
func (s *Distribution) SetInProgressInvalidationBatches(v int64) *Distribution {
|
|
s.InProgressInvalidationBatches = &v
|
|
return s
|
|
}
|
|
|
|
// SetLastModifiedTime sets the LastModifiedTime field's value.
|
|
func (s *Distribution) SetLastModifiedTime(v time.Time) *Distribution {
|
|
s.LastModifiedTime = &v
|
|
return s
|
|
}
|
|
|
|
// SetStatus sets the Status field's value.
|
|
func (s *Distribution) SetStatus(v string) *Distribution {
|
|
s.Status = &v
|
|
return s
|
|
}
|
|
|
|
// A distribution configuration.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/DistributionConfig
|
|
type DistributionConfig struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// A complex type that contains information about CNAMEs (alternate domain names),
|
|
// if any, for this distribution.
|
|
Aliases *Aliases `type:"structure"`
|
|
|
|
// A complex type that contains zero or more CacheBehavior elements.
|
|
CacheBehaviors *CacheBehaviors `type:"structure"`
|
|
|
|
// A unique value (for example, a date-time stamp) that ensures that the request
|
|
// can't be replayed.
|
|
//
|
|
// If the value of CallerReference is new (regardless of the content of the
|
|
// DistributionConfig object), CloudFront creates a new distribution.
|
|
//
|
|
// If CallerReference is a value you already sent in a previous request to create
|
|
// a distribution, and if the content of the DistributionConfig is identical
|
|
// to the original request (ignoring white space), CloudFront returns the same
|
|
// the response that it returned to the original request.
|
|
//
|
|
// If CallerReference is a value you already sent in a previous request to create
|
|
// a distribution but the content of the DistributionConfig is different from
|
|
// the original request, CloudFront returns a DistributionAlreadyExists error.
|
|
//
|
|
// CallerReference is a required field
|
|
CallerReference *string `type:"string" required:"true"`
|
|
|
|
// Any comments you want to include about the distribution.
|
|
//
|
|
// If you don't want to specify a comment, include an empty Comment element.
|
|
//
|
|
// To delete an existing comment, update the distribution configuration and
|
|
// include an empty Comment element.
|
|
//
|
|
// To add or change a comment, update the distribution configuration and specify
|
|
// the new comment.
|
|
//
|
|
// Comment is a required field
|
|
Comment *string `type:"string" required:"true"`
|
|
|
|
// A complex type that controls the following:
|
|
//
|
|
// * Whether CloudFront replaces HTTP status codes in the 4xx and 5xx range
|
|
// with custom error messages before returning the response to the viewer.
|
|
//
|
|
// * How long CloudFront caches HTTP status codes in the 4xx and 5xx range.
|
|
//
|
|
// For more information about custom error pages, see Customizing Error Responses
|
|
// (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/custom-error-pages.html)
|
|
// in the Amazon CloudFront Developer Guide.
|
|
CustomErrorResponses *CustomErrorResponses `type:"structure"`
|
|
|
|
// A complex type that describes the default cache behavior if you don't specify
|
|
// a CacheBehavior element or if files don't match any of the values of PathPattern
|
|
// in CacheBehavior elements. You must create exactly one default cache behavior.
|
|
//
|
|
// DefaultCacheBehavior is a required field
|
|
DefaultCacheBehavior *DefaultCacheBehavior `type:"structure" required:"true"`
|
|
|
|
// The object that you want CloudFront to request from your origin (for example,
|
|
// index.html) when a viewer requests the root URL for your distribution (http://www.example.com)
|
|
// instead of an object in your distribution (http://www.example.com/product-description.html).
|
|
// Specifying a default root object avoids exposing the contents of your distribution.
|
|
//
|
|
// Specify only the object name, for example, index.html. Don't add a / before
|
|
// the object name.
|
|
//
|
|
// If you don't want to specify a default root object when you create a distribution,
|
|
// include an empty DefaultRootObject element.
|
|
//
|
|
// To delete the default root object from an existing distribution, update the
|
|
// distribution configuration and include an empty DefaultRootObject element.
|
|
//
|
|
// To replace the default root object, update the distribution configuration
|
|
// and specify the new object.
|
|
//
|
|
// For more information about the default root object, see Creating a Default
|
|
// Root Object (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/DefaultRootObject.html)
|
|
// in the Amazon CloudFront Developer Guide.
|
|
DefaultRootObject *string `type:"string"`
|
|
|
|
// From this field, you can enable or disable the selected distribution.
|
|
//
|
|
// If you specify false for Enabled but you specify values for Bucket and Prefix,
|
|
// the values are automatically deleted.
|
|
//
|
|
// Enabled is a required field
|
|
Enabled *bool `type:"boolean" required:"true"`
|
|
|
|
// (Optional) Specify the maximum HTTP version that you want viewers to use
|
|
// to communicate with CloudFront. The default value for new web distributions
|
|
// is http2. Viewers that don't support HTTP/2 automatically use an earlier
|
|
// HTTP version.
|
|
//
|
|
// For viewers and CloudFront to use HTTP/2, viewers must support TLS 1.2 or
|
|
// later, and must support Server Name Identification (SNI).
|
|
//
|
|
// In general, configuring CloudFront to communicate with viewers using HTTP/2
|
|
// reduces latency. You can improve performance by optimizing for HTTP/2. For
|
|
// more information, do an Internet search for "http/2 optimization."
|
|
HttpVersion *string `type:"string" enum:"HttpVersion"`
|
|
|
|
// If you want CloudFront to respond to IPv6 DNS requests with an IPv6 address
|
|
// for your distribution, specify true. If you specify false, CloudFront responds
|
|
// to IPv6 DNS requests with the DNS response code NOERROR and with no IP addresses.
|
|
// This allows viewers to submit a second request, for an IPv4 address for your
|
|
// distribution.
|
|
//
|
|
// In general, you should enable IPv6 if you have users on IPv6 networks who
|
|
// want to access your content. However, if you're using signed URLs or signed
|
|
// cookies to restrict access to your content, and if you're using a custom
|
|
// policy that includes the IpAddress parameter to restrict the IP addresses
|
|
// that can access your content, don't enable IPv6. If you want to restrict
|
|
// access to some content by IP address and not restrict access to other content
|
|
// (or restrict access but not by IP address), you can create two distributions.
|
|
// For more information, see Creating a Signed URL Using a Custom Policy (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-creating-signed-url-custom-policy.html)
|
|
// in the Amazon CloudFront Developer Guide.
|
|
//
|
|
// If you're using an Amazon Route 53 alias resource record set to route traffic
|
|
// to your CloudFront distribution, you need to create a second alias resource
|
|
// record set when both of the following are true:
|
|
//
|
|
// * You enable IPv6 for the distribution
|
|
//
|
|
// * You're using alternate domain names in the URLs for your objects
|
|
//
|
|
// For more information, see Routing Traffic to an Amazon CloudFront Web Distribution
|
|
// by Using Your Domain Name (http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-to-cloudfront-distribution.html)
|
|
// in the Amazon Route 53 Developer Guide.
|
|
//
|
|
// If you created a CNAME resource record set, either with Amazon Route 53 or
|
|
// with another DNS service, you don't need to make any changes. A CNAME record
|
|
// will route traffic to your distribution regardless of the IP address format
|
|
// of the viewer request.
|
|
IsIPV6Enabled *bool `type:"boolean"`
|
|
|
|
// A complex type that controls whether access logs are written for the distribution.
|
|
//
|
|
// For more information about logging, see Access Logs (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/AccessLogs.html)
|
|
// in the Amazon CloudFront Developer Guide.
|
|
Logging *LoggingConfig `type:"structure"`
|
|
|
|
// A complex type that contains information about origins for this distribution.
|
|
//
|
|
// Origins is a required field
|
|
Origins *Origins `type:"structure" required:"true"`
|
|
|
|
// The price class that corresponds with the maximum price that you want to
|
|
// pay for CloudFront service. If you specify PriceClass_All, CloudFront responds
|
|
// to requests for your objects from all CloudFront edge locations.
|
|
//
|
|
// If you specify a price class other than PriceClass_All, CloudFront serves
|
|
// your objects from the CloudFront edge location that has the lowest latency
|
|
// among the edge locations in your price class. Viewers who are in or near
|
|
// regions that are excluded from your specified price class may encounter slower
|
|
// performance.
|
|
//
|
|
// For more information about price classes, see Choosing the Price Class for
|
|
// a CloudFront Distribution (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PriceClass.html)
|
|
// in the Amazon CloudFront Developer Guide. For information about CloudFront
|
|
// pricing, including how price classes map to CloudFront regions, see Amazon
|
|
// CloudFront Pricing (https://aws.amazon.com/cloudfront/pricing/).
|
|
PriceClass *string `type:"string" enum:"PriceClass"`
|
|
|
|
// A complex type that identifies ways in which you want to restrict distribution
|
|
// of your content.
|
|
Restrictions *Restrictions `type:"structure"`
|
|
|
|
// A complex type that specifies the following:
|
|
//
|
|
// * Whether you want viewers to use HTTP or HTTPS to request your objects.
|
|
//
|
|
// * If you want viewers to use HTTPS, whether you're using an alternate
|
|
// domain name such as example.com or the CloudFront domain name for your
|
|
// distribution, such as d111111abcdef8.cloudfront.net.
|
|
//
|
|
// * If you're using an alternate domain name, whether AWS Certificate Manager
|
|
// (ACM) provided the certificate, or you purchased a certificate from a
|
|
// third-party certificate authority and imported it into ACM or uploaded
|
|
// it to the IAM certificate store.
|
|
//
|
|
// You must specify only one of the following values:
|
|
//
|
|
// * ViewerCertificate$ACMCertificateArn
|
|
//
|
|
// * ViewerCertificate$IAMCertificateId
|
|
//
|
|
// * ViewerCertificate$CloudFrontDefaultCertificate
|
|
//
|
|
// Don't specify false for CloudFrontDefaultCertificate.
|
|
//
|
|
// If you want viewers to use HTTP instead of HTTPS to request your objects:
|
|
// Specify the following value:
|
|
//
|
|
// <CloudFrontDefaultCertificate>true<CloudFrontDefaultCertificate>
|
|
//
|
|
// In addition, specify allow-all for ViewerProtocolPolicy for all of your cache
|
|
// behaviors.
|
|
//
|
|
// If you want viewers to use HTTPS to request your objects: Choose the type
|
|
// of certificate that you want to use based on whether you're using an alternate
|
|
// domain name for your objects or the CloudFront domain name:
|
|
//
|
|
// * If you're using an alternate domain name, such as example.com: Specify
|
|
// one of the following values, depending on whether ACM provided your certificate
|
|
// or you purchased your certificate from third-party certificate authority:
|
|
//
|
|
// <ACMCertificateArn>ARN for ACM SSL/TLS certificate<ACMCertificateArn> where
|
|
// ARN for ACM SSL/TLS certificate is the ARN for the ACM SSL/TLS certificate
|
|
// that you want to use for this distribution.
|
|
//
|
|
// <IAMCertificateId>IAM certificate ID<IAMCertificateId> where IAM certificate
|
|
// ID is the ID that IAM returned when you added the certificate to the IAM
|
|
// certificate store.
|
|
//
|
|
// If you specify ACMCertificateArn or IAMCertificateId, you must also specify
|
|
// a value for SSLSupportMethod.
|
|
//
|
|
// If you choose to use an ACM certificate or a certificate in the IAM certificate
|
|
// store, we recommend that you use only an alternate domain name in your
|
|
// object URLs (https://example.com/logo.jpg). If you use the domain name
|
|
// that is associated with your CloudFront distribution (such as https://d111111abcdef8.cloudfront.net/logo.jpg)
|
|
// and the viewer supports SNI, then CloudFront behaves normally. However,
|
|
// if the browser does not support SNI, the user's experience depends on
|
|
// the value that you choose for SSLSupportMethod:
|
|
//
|
|
// vip: The viewer displays a warning because there is a mismatch between the
|
|
// CloudFront domain name and the domain name in your SSL/TLS certificate.
|
|
//
|
|
// sni-only: CloudFront drops the connection with the browser without returning
|
|
// the object.
|
|
//
|
|
// * If you're using the CloudFront domain name for your distribution, such
|
|
// as d111111abcdef8.cloudfront.net: Specify the following value:
|
|
//
|
|
// <CloudFrontDefaultCertificate>true<CloudFrontDefaultCertificate>
|
|
//
|
|
// If you want viewers to use HTTPS, you must also specify one of the following
|
|
// values in your cache behaviors:
|
|
//
|
|
// * <ViewerProtocolPolicy>https-only<ViewerProtocolPolicy>
|
|
//
|
|
// * <ViewerProtocolPolicy>redirect-to-https<ViewerProtocolPolicy>
|
|
//
|
|
// You can also optionally require that CloudFront use HTTPS to communicate
|
|
// with your origin by specifying one of the following values for the applicable
|
|
// origins:
|
|
//
|
|
// * <OriginProtocolPolicy>https-only<OriginProtocolPolicy>
|
|
//
|
|
// * <OriginProtocolPolicy>match-viewer<OriginProtocolPolicy>
|
|
//
|
|
// For more information, see Using Alternate Domain Names and HTTPS (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/SecureConnections.html#CNAMEsAndHTTPS)
|
|
// in the Amazon CloudFront Developer Guide.
|
|
ViewerCertificate *ViewerCertificate `type:"structure"`
|
|
|
|
// A unique identifier that specifies the AWS WAF web ACL, if any, to associate
|
|
// with this distribution.
|
|
//
|
|
// AWS WAF is a web application firewall that lets you monitor the HTTP and
|
|
// HTTPS requests that are forwarded to CloudFront, and lets you control access
|
|
// to your content. Based on conditions that you specify, such as the IP addresses
|
|
// that requests originate from or the values of query strings, CloudFront responds
|
|
// to requests either with the requested content or with an HTTP 403 status
|
|
// code (Forbidden). You can also configure CloudFront to return a custom error
|
|
// page when a request is blocked. For more information about AWS WAF, see the
|
|
// AWS WAF Developer Guide (http://docs.aws.amazon.com/waf/latest/developerguide/what-is-aws-waf.html).
|
|
WebACLId *string `type:"string"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s DistributionConfig) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s DistributionConfig) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *DistributionConfig) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "DistributionConfig"}
|
|
if s.CallerReference == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("CallerReference"))
|
|
}
|
|
if s.Comment == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Comment"))
|
|
}
|
|
if s.DefaultCacheBehavior == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("DefaultCacheBehavior"))
|
|
}
|
|
if s.Enabled == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Enabled"))
|
|
}
|
|
if s.Origins == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Origins"))
|
|
}
|
|
if s.Aliases != nil {
|
|
if err := s.Aliases.Validate(); err != nil {
|
|
invalidParams.AddNested("Aliases", err.(request.ErrInvalidParams))
|
|
}
|
|
}
|
|
if s.CacheBehaviors != nil {
|
|
if err := s.CacheBehaviors.Validate(); err != nil {
|
|
invalidParams.AddNested("CacheBehaviors", err.(request.ErrInvalidParams))
|
|
}
|
|
}
|
|
if s.CustomErrorResponses != nil {
|
|
if err := s.CustomErrorResponses.Validate(); err != nil {
|
|
invalidParams.AddNested("CustomErrorResponses", err.(request.ErrInvalidParams))
|
|
}
|
|
}
|
|
if s.DefaultCacheBehavior != nil {
|
|
if err := s.DefaultCacheBehavior.Validate(); err != nil {
|
|
invalidParams.AddNested("DefaultCacheBehavior", err.(request.ErrInvalidParams))
|
|
}
|
|
}
|
|
if s.Logging != nil {
|
|
if err := s.Logging.Validate(); err != nil {
|
|
invalidParams.AddNested("Logging", err.(request.ErrInvalidParams))
|
|
}
|
|
}
|
|
if s.Origins != nil {
|
|
if err := s.Origins.Validate(); err != nil {
|
|
invalidParams.AddNested("Origins", err.(request.ErrInvalidParams))
|
|
}
|
|
}
|
|
if s.Restrictions != nil {
|
|
if err := s.Restrictions.Validate(); err != nil {
|
|
invalidParams.AddNested("Restrictions", err.(request.ErrInvalidParams))
|
|
}
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetAliases sets the Aliases field's value.
|
|
func (s *DistributionConfig) SetAliases(v *Aliases) *DistributionConfig {
|
|
s.Aliases = v
|
|
return s
|
|
}
|
|
|
|
// SetCacheBehaviors sets the CacheBehaviors field's value.
|
|
func (s *DistributionConfig) SetCacheBehaviors(v *CacheBehaviors) *DistributionConfig {
|
|
s.CacheBehaviors = v
|
|
return s
|
|
}
|
|
|
|
// SetCallerReference sets the CallerReference field's value.
|
|
func (s *DistributionConfig) SetCallerReference(v string) *DistributionConfig {
|
|
s.CallerReference = &v
|
|
return s
|
|
}
|
|
|
|
// SetComment sets the Comment field's value.
|
|
func (s *DistributionConfig) SetComment(v string) *DistributionConfig {
|
|
s.Comment = &v
|
|
return s
|
|
}
|
|
|
|
// SetCustomErrorResponses sets the CustomErrorResponses field's value.
|
|
func (s *DistributionConfig) SetCustomErrorResponses(v *CustomErrorResponses) *DistributionConfig {
|
|
s.CustomErrorResponses = v
|
|
return s
|
|
}
|
|
|
|
// SetDefaultCacheBehavior sets the DefaultCacheBehavior field's value.
|
|
func (s *DistributionConfig) SetDefaultCacheBehavior(v *DefaultCacheBehavior) *DistributionConfig {
|
|
s.DefaultCacheBehavior = v
|
|
return s
|
|
}
|
|
|
|
// SetDefaultRootObject sets the DefaultRootObject field's value.
|
|
func (s *DistributionConfig) SetDefaultRootObject(v string) *DistributionConfig {
|
|
s.DefaultRootObject = &v
|
|
return s
|
|
}
|
|
|
|
// SetEnabled sets the Enabled field's value.
|
|
func (s *DistributionConfig) SetEnabled(v bool) *DistributionConfig {
|
|
s.Enabled = &v
|
|
return s
|
|
}
|
|
|
|
// SetHttpVersion sets the HttpVersion field's value.
|
|
func (s *DistributionConfig) SetHttpVersion(v string) *DistributionConfig {
|
|
s.HttpVersion = &v
|
|
return s
|
|
}
|
|
|
|
// SetIsIPV6Enabled sets the IsIPV6Enabled field's value.
|
|
func (s *DistributionConfig) SetIsIPV6Enabled(v bool) *DistributionConfig {
|
|
s.IsIPV6Enabled = &v
|
|
return s
|
|
}
|
|
|
|
// SetLogging sets the Logging field's value.
|
|
func (s *DistributionConfig) SetLogging(v *LoggingConfig) *DistributionConfig {
|
|
s.Logging = v
|
|
return s
|
|
}
|
|
|
|
// SetOrigins sets the Origins field's value.
|
|
func (s *DistributionConfig) SetOrigins(v *Origins) *DistributionConfig {
|
|
s.Origins = v
|
|
return s
|
|
}
|
|
|
|
// SetPriceClass sets the PriceClass field's value.
|
|
func (s *DistributionConfig) SetPriceClass(v string) *DistributionConfig {
|
|
s.PriceClass = &v
|
|
return s
|
|
}
|
|
|
|
// SetRestrictions sets the Restrictions field's value.
|
|
func (s *DistributionConfig) SetRestrictions(v *Restrictions) *DistributionConfig {
|
|
s.Restrictions = v
|
|
return s
|
|
}
|
|
|
|
// SetViewerCertificate sets the ViewerCertificate field's value.
|
|
func (s *DistributionConfig) SetViewerCertificate(v *ViewerCertificate) *DistributionConfig {
|
|
s.ViewerCertificate = v
|
|
return s
|
|
}
|
|
|
|
// SetWebACLId sets the WebACLId field's value.
|
|
func (s *DistributionConfig) SetWebACLId(v string) *DistributionConfig {
|
|
s.WebACLId = &v
|
|
return s
|
|
}
|
|
|
|
// A distribution Configuration and a list of tags to be associated with the
|
|
// distribution.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/DistributionConfigWithTags
|
|
type DistributionConfigWithTags struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// A distribution configuration.
|
|
//
|
|
// DistributionConfig is a required field
|
|
DistributionConfig *DistributionConfig `type:"structure" required:"true"`
|
|
|
|
// A complex type that contains zero or more Tag elements.
|
|
//
|
|
// Tags is a required field
|
|
Tags *Tags `type:"structure" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s DistributionConfigWithTags) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s DistributionConfigWithTags) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *DistributionConfigWithTags) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "DistributionConfigWithTags"}
|
|
if s.DistributionConfig == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("DistributionConfig"))
|
|
}
|
|
if s.Tags == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Tags"))
|
|
}
|
|
if s.DistributionConfig != nil {
|
|
if err := s.DistributionConfig.Validate(); err != nil {
|
|
invalidParams.AddNested("DistributionConfig", err.(request.ErrInvalidParams))
|
|
}
|
|
}
|
|
if s.Tags != nil {
|
|
if err := s.Tags.Validate(); err != nil {
|
|
invalidParams.AddNested("Tags", err.(request.ErrInvalidParams))
|
|
}
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetDistributionConfig sets the DistributionConfig field's value.
|
|
func (s *DistributionConfigWithTags) SetDistributionConfig(v *DistributionConfig) *DistributionConfigWithTags {
|
|
s.DistributionConfig = v
|
|
return s
|
|
}
|
|
|
|
// SetTags sets the Tags field's value.
|
|
func (s *DistributionConfigWithTags) SetTags(v *Tags) *DistributionConfigWithTags {
|
|
s.Tags = v
|
|
return s
|
|
}
|
|
|
|
// A distribution list.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/DistributionList
|
|
type DistributionList struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// A flag that indicates whether more distributions remain to be listed. If
|
|
// your results were truncated, you can make a follow-up pagination request
|
|
// using the Marker request parameter to retrieve more distributions in the
|
|
// list.
|
|
//
|
|
// IsTruncated is a required field
|
|
IsTruncated *bool `type:"boolean" required:"true"`
|
|
|
|
// A complex type that contains one DistributionSummary element for each distribution
|
|
// that was created by the current AWS account.
|
|
Items []*DistributionSummary `locationNameList:"DistributionSummary" type:"list"`
|
|
|
|
// The value you provided for the Marker request parameter.
|
|
//
|
|
// Marker is a required field
|
|
Marker *string `type:"string" required:"true"`
|
|
|
|
// The value you provided for the MaxItems request parameter.
|
|
//
|
|
// MaxItems is a required field
|
|
MaxItems *int64 `type:"integer" required:"true"`
|
|
|
|
// If IsTruncated is true, this element is present and contains the value you
|
|
// can use for the Marker request parameter to continue listing your distributions
|
|
// where they left off.
|
|
NextMarker *string `type:"string"`
|
|
|
|
// The number of distributions that were created by the current AWS account.
|
|
//
|
|
// Quantity is a required field
|
|
Quantity *int64 `type:"integer" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s DistributionList) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s DistributionList) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// SetIsTruncated sets the IsTruncated field's value.
|
|
func (s *DistributionList) SetIsTruncated(v bool) *DistributionList {
|
|
s.IsTruncated = &v
|
|
return s
|
|
}
|
|
|
|
// SetItems sets the Items field's value.
|
|
func (s *DistributionList) SetItems(v []*DistributionSummary) *DistributionList {
|
|
s.Items = v
|
|
return s
|
|
}
|
|
|
|
// SetMarker sets the Marker field's value.
|
|
func (s *DistributionList) SetMarker(v string) *DistributionList {
|
|
s.Marker = &v
|
|
return s
|
|
}
|
|
|
|
// SetMaxItems sets the MaxItems field's value.
|
|
func (s *DistributionList) SetMaxItems(v int64) *DistributionList {
|
|
s.MaxItems = &v
|
|
return s
|
|
}
|
|
|
|
// SetNextMarker sets the NextMarker field's value.
|
|
func (s *DistributionList) SetNextMarker(v string) *DistributionList {
|
|
s.NextMarker = &v
|
|
return s
|
|
}
|
|
|
|
// SetQuantity sets the Quantity field's value.
|
|
func (s *DistributionList) SetQuantity(v int64) *DistributionList {
|
|
s.Quantity = &v
|
|
return s
|
|
}
|
|
|
|
// A summary of the information about a CloudFront distribution.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/DistributionSummary
|
|
type DistributionSummary struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// The ARN (Amazon Resource Name) for the distribution. For example: arn:aws:cloudfront::123456789012:distribution/EDFDVBD632BHDS5,
|
|
// where 123456789012 is your AWS account ID.
|
|
//
|
|
// ARN is a required field
|
|
ARN *string `type:"string" required:"true"`
|
|
|
|
// A complex type that contains information about CNAMEs (alternate domain names),
|
|
// if any, for this distribution.
|
|
//
|
|
// Aliases is a required field
|
|
Aliases *Aliases `type:"structure" required:"true"`
|
|
|
|
// A complex type that contains zero or more CacheBehavior elements.
|
|
//
|
|
// CacheBehaviors is a required field
|
|
CacheBehaviors *CacheBehaviors `type:"structure" required:"true"`
|
|
|
|
// The comment originally specified when this distribution was created.
|
|
//
|
|
// Comment is a required field
|
|
Comment *string `type:"string" required:"true"`
|
|
|
|
// A complex type that contains zero or more CustomErrorResponses elements.
|
|
//
|
|
// CustomErrorResponses is a required field
|
|
CustomErrorResponses *CustomErrorResponses `type:"structure" required:"true"`
|
|
|
|
// A complex type that describes the default cache behavior if you don't specify
|
|
// a CacheBehavior element or if files don't match any of the values of PathPattern
|
|
// in CacheBehavior elements. You must create exactly one default cache behavior.
|
|
//
|
|
// DefaultCacheBehavior is a required field
|
|
DefaultCacheBehavior *DefaultCacheBehavior `type:"structure" required:"true"`
|
|
|
|
// The domain name that corresponds to the distribution, for example, d111111abcdef8.cloudfront.net.
|
|
//
|
|
// DomainName is a required field
|
|
DomainName *string `type:"string" required:"true"`
|
|
|
|
// Whether the distribution is enabled to accept user requests for content.
|
|
//
|
|
// Enabled is a required field
|
|
Enabled *bool `type:"boolean" required:"true"`
|
|
|
|
// Specify the maximum HTTP version that you want viewers to use to communicate
|
|
// with CloudFront. The default value for new web distributions is http2. Viewers
|
|
// that don't support HTTP/2 will automatically use an earlier version.
|
|
//
|
|
// HttpVersion is a required field
|
|
HttpVersion *string `type:"string" required:"true" enum:"HttpVersion"`
|
|
|
|
// The identifier for the distribution. For example: EDFDVBD632BHDS5.
|
|
//
|
|
// Id is a required field
|
|
Id *string `type:"string" required:"true"`
|
|
|
|
// Whether CloudFront responds to IPv6 DNS requests with an IPv6 address for
|
|
// your distribution.
|
|
//
|
|
// IsIPV6Enabled is a required field
|
|
IsIPV6Enabled *bool `type:"boolean" required:"true"`
|
|
|
|
// The date and time the distribution was last modified.
|
|
//
|
|
// LastModifiedTime is a required field
|
|
LastModifiedTime *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"`
|
|
|
|
// A complex type that contains information about origins for this distribution.
|
|
//
|
|
// Origins is a required field
|
|
Origins *Origins `type:"structure" required:"true"`
|
|
|
|
// PriceClass is a required field
|
|
PriceClass *string `type:"string" required:"true" enum:"PriceClass"`
|
|
|
|
// A complex type that identifies ways in which you want to restrict distribution
|
|
// of your content.
|
|
//
|
|
// Restrictions is a required field
|
|
Restrictions *Restrictions `type:"structure" required:"true"`
|
|
|
|
// The current status of the distribution. When the status is Deployed, the
|
|
// distribution's information is propagated to all CloudFront edge locations.
|
|
//
|
|
// Status is a required field
|
|
Status *string `type:"string" required:"true"`
|
|
|
|
// A complex type that specifies the following:
|
|
//
|
|
// * Whether you want viewers to use HTTP or HTTPS to request your objects.
|
|
//
|
|
// * If you want viewers to use HTTPS, whether you're using an alternate
|
|
// domain name such as example.com or the CloudFront domain name for your
|
|
// distribution, such as d111111abcdef8.cloudfront.net.
|
|
//
|
|
// * If you're using an alternate domain name, whether AWS Certificate Manager
|
|
// (ACM) provided the certificate, or you purchased a certificate from a
|
|
// third-party certificate authority and imported it into ACM or uploaded
|
|
// it to the IAM certificate store.
|
|
//
|
|
// You must specify only one of the following values:
|
|
//
|
|
// * ViewerCertificate$ACMCertificateArn
|
|
//
|
|
// * ViewerCertificate$IAMCertificateId
|
|
//
|
|
// * ViewerCertificate$CloudFrontDefaultCertificate
|
|
//
|
|
// Don't specify false for CloudFrontDefaultCertificate.
|
|
//
|
|
// If you want viewers to use HTTP instead of HTTPS to request your objects:
|
|
// Specify the following value:
|
|
//
|
|
// <CloudFrontDefaultCertificate>true<CloudFrontDefaultCertificate>
|
|
//
|
|
// In addition, specify allow-all for ViewerProtocolPolicy for all of your cache
|
|
// behaviors.
|
|
//
|
|
// If you want viewers to use HTTPS to request your objects: Choose the type
|
|
// of certificate that you want to use based on whether you're using an alternate
|
|
// domain name for your objects or the CloudFront domain name:
|
|
//
|
|
// * If you're using an alternate domain name, such as example.com: Specify
|
|
// one of the following values, depending on whether ACM provided your certificate
|
|
// or you purchased your certificate from third-party certificate authority:
|
|
//
|
|
// <ACMCertificateArn>ARN for ACM SSL/TLS certificate<ACMCertificateArn> where
|
|
// ARN for ACM SSL/TLS certificate is the ARN for the ACM SSL/TLS certificate
|
|
// that you want to use for this distribution.
|
|
//
|
|
// <IAMCertificateId>IAM certificate ID<IAMCertificateId> where IAM certificate
|
|
// ID is the ID that IAM returned when you added the certificate to the IAM
|
|
// certificate store.
|
|
//
|
|
// If you specify ACMCertificateArn or IAMCertificateId, you must also specify
|
|
// a value for SSLSupportMethod.
|
|
//
|
|
// If you choose to use an ACM certificate or a certificate in the IAM certificate
|
|
// store, we recommend that you use only an alternate domain name in your
|
|
// object URLs (https://example.com/logo.jpg). If you use the domain name
|
|
// that is associated with your CloudFront distribution (such as https://d111111abcdef8.cloudfront.net/logo.jpg)
|
|
// and the viewer supports SNI, then CloudFront behaves normally. However,
|
|
// if the browser does not support SNI, the user's experience depends on
|
|
// the value that you choose for SSLSupportMethod:
|
|
//
|
|
// vip: The viewer displays a warning because there is a mismatch between the
|
|
// CloudFront domain name and the domain name in your SSL/TLS certificate.
|
|
//
|
|
// sni-only: CloudFront drops the connection with the browser without returning
|
|
// the object.
|
|
//
|
|
// * If you're using the CloudFront domain name for your distribution, such
|
|
// as d111111abcdef8.cloudfront.net: Specify the following value:
|
|
//
|
|
// <CloudFrontDefaultCertificate>true<CloudFrontDefaultCertificate>
|
|
//
|
|
// If you want viewers to use HTTPS, you must also specify one of the following
|
|
// values in your cache behaviors:
|
|
//
|
|
// * <ViewerProtocolPolicy>https-only<ViewerProtocolPolicy>
|
|
//
|
|
// * <ViewerProtocolPolicy>redirect-to-https<ViewerProtocolPolicy>
|
|
//
|
|
// You can also optionally require that CloudFront use HTTPS to communicate
|
|
// with your origin by specifying one of the following values for the applicable
|
|
// origins:
|
|
//
|
|
// * <OriginProtocolPolicy>https-only<OriginProtocolPolicy>
|
|
//
|
|
// * <OriginProtocolPolicy>match-viewer<OriginProtocolPolicy>
|
|
//
|
|
// For more information, see Using Alternate Domain Names and HTTPS (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/SecureConnections.html#CNAMEsAndHTTPS)
|
|
// in the Amazon CloudFront Developer Guide.
|
|
//
|
|
// ViewerCertificate is a required field
|
|
ViewerCertificate *ViewerCertificate `type:"structure" required:"true"`
|
|
|
|
// The Web ACL Id (if any) associated with the distribution.
|
|
//
|
|
// WebACLId is a required field
|
|
WebACLId *string `type:"string" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s DistributionSummary) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s DistributionSummary) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// SetARN sets the ARN field's value.
|
|
func (s *DistributionSummary) SetARN(v string) *DistributionSummary {
|
|
s.ARN = &v
|
|
return s
|
|
}
|
|
|
|
// SetAliases sets the Aliases field's value.
|
|
func (s *DistributionSummary) SetAliases(v *Aliases) *DistributionSummary {
|
|
s.Aliases = v
|
|
return s
|
|
}
|
|
|
|
// SetCacheBehaviors sets the CacheBehaviors field's value.
|
|
func (s *DistributionSummary) SetCacheBehaviors(v *CacheBehaviors) *DistributionSummary {
|
|
s.CacheBehaviors = v
|
|
return s
|
|
}
|
|
|
|
// SetComment sets the Comment field's value.
|
|
func (s *DistributionSummary) SetComment(v string) *DistributionSummary {
|
|
s.Comment = &v
|
|
return s
|
|
}
|
|
|
|
// SetCustomErrorResponses sets the CustomErrorResponses field's value.
|
|
func (s *DistributionSummary) SetCustomErrorResponses(v *CustomErrorResponses) *DistributionSummary {
|
|
s.CustomErrorResponses = v
|
|
return s
|
|
}
|
|
|
|
// SetDefaultCacheBehavior sets the DefaultCacheBehavior field's value.
|
|
func (s *DistributionSummary) SetDefaultCacheBehavior(v *DefaultCacheBehavior) *DistributionSummary {
|
|
s.DefaultCacheBehavior = v
|
|
return s
|
|
}
|
|
|
|
// SetDomainName sets the DomainName field's value.
|
|
func (s *DistributionSummary) SetDomainName(v string) *DistributionSummary {
|
|
s.DomainName = &v
|
|
return s
|
|
}
|
|
|
|
// SetEnabled sets the Enabled field's value.
|
|
func (s *DistributionSummary) SetEnabled(v bool) *DistributionSummary {
|
|
s.Enabled = &v
|
|
return s
|
|
}
|
|
|
|
// SetHttpVersion sets the HttpVersion field's value.
|
|
func (s *DistributionSummary) SetHttpVersion(v string) *DistributionSummary {
|
|
s.HttpVersion = &v
|
|
return s
|
|
}
|
|
|
|
// SetId sets the Id field's value.
|
|
func (s *DistributionSummary) SetId(v string) *DistributionSummary {
|
|
s.Id = &v
|
|
return s
|
|
}
|
|
|
|
// SetIsIPV6Enabled sets the IsIPV6Enabled field's value.
|
|
func (s *DistributionSummary) SetIsIPV6Enabled(v bool) *DistributionSummary {
|
|
s.IsIPV6Enabled = &v
|
|
return s
|
|
}
|
|
|
|
// SetLastModifiedTime sets the LastModifiedTime field's value.
|
|
func (s *DistributionSummary) SetLastModifiedTime(v time.Time) *DistributionSummary {
|
|
s.LastModifiedTime = &v
|
|
return s
|
|
}
|
|
|
|
// SetOrigins sets the Origins field's value.
|
|
func (s *DistributionSummary) SetOrigins(v *Origins) *DistributionSummary {
|
|
s.Origins = v
|
|
return s
|
|
}
|
|
|
|
// SetPriceClass sets the PriceClass field's value.
|
|
func (s *DistributionSummary) SetPriceClass(v string) *DistributionSummary {
|
|
s.PriceClass = &v
|
|
return s
|
|
}
|
|
|
|
// SetRestrictions sets the Restrictions field's value.
|
|
func (s *DistributionSummary) SetRestrictions(v *Restrictions) *DistributionSummary {
|
|
s.Restrictions = v
|
|
return s
|
|
}
|
|
|
|
// SetStatus sets the Status field's value.
|
|
func (s *DistributionSummary) SetStatus(v string) *DistributionSummary {
|
|
s.Status = &v
|
|
return s
|
|
}
|
|
|
|
// SetViewerCertificate sets the ViewerCertificate field's value.
|
|
func (s *DistributionSummary) SetViewerCertificate(v *ViewerCertificate) *DistributionSummary {
|
|
s.ViewerCertificate = v
|
|
return s
|
|
}
|
|
|
|
// SetWebACLId sets the WebACLId field's value.
|
|
func (s *DistributionSummary) SetWebACLId(v string) *DistributionSummary {
|
|
s.WebACLId = &v
|
|
return s
|
|
}
|
|
|
|
// A complex type that specifies how CloudFront handles query strings and cookies.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/ForwardedValues
|
|
type ForwardedValues struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// A complex type that specifies whether you want CloudFront to forward cookies
|
|
// to the origin and, if so, which ones. For more information about forwarding
|
|
// cookies to the origin, see How CloudFront Forwards, Caches, and Logs Cookies
|
|
// (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Cookies.html)
|
|
// in the Amazon CloudFront Developer Guide.
|
|
//
|
|
// Cookies is a required field
|
|
Cookies *CookiePreference `type:"structure" required:"true"`
|
|
|
|
// A complex type that specifies the Headers, if any, that you want CloudFront
|
|
// to base caching on for this cache behavior.
|
|
Headers *Headers `type:"structure"`
|
|
|
|
// Indicates whether you want CloudFront to forward query strings to the origin
|
|
// that is associated with this cache behavior and cache based on the query
|
|
// string parameters. CloudFront behavior depends on the value of QueryString
|
|
// and on the values that you specify for QueryStringCacheKeys, if any:
|
|
//
|
|
// If you specify true for QueryString and you don't specify any values for
|
|
// QueryStringCacheKeys, CloudFront forwards all query string parameters to
|
|
// the origin and caches based on all query string parameters. Depending on
|
|
// how many query string parameters and values you have, this can adversely
|
|
// affect performance because CloudFront must forward more requests to the origin.
|
|
//
|
|
// If you specify true for QueryString and you specify one or more values for
|
|
// QueryStringCacheKeys, CloudFront forwards all query string parameters to
|
|
// the origin, but it only caches based on the query string parameters that
|
|
// you specify.
|
|
//
|
|
// If you specify false for QueryString, CloudFront doesn't forward any query
|
|
// string parameters to the origin, and doesn't cache based on query string
|
|
// parameters.
|
|
//
|
|
// For more information, see Configuring CloudFront to Cache Based on Query
|
|
// String Parameters (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/QueryStringParameters.html)
|
|
// in the Amazon CloudFront Developer Guide.
|
|
//
|
|
// QueryString is a required field
|
|
QueryString *bool `type:"boolean" required:"true"`
|
|
|
|
// A complex type that contains information about the query string parameters
|
|
// that you want CloudFront to use for caching for this cache behavior.
|
|
QueryStringCacheKeys *QueryStringCacheKeys `type:"structure"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s ForwardedValues) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s ForwardedValues) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *ForwardedValues) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "ForwardedValues"}
|
|
if s.Cookies == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Cookies"))
|
|
}
|
|
if s.QueryString == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("QueryString"))
|
|
}
|
|
if s.Cookies != nil {
|
|
if err := s.Cookies.Validate(); err != nil {
|
|
invalidParams.AddNested("Cookies", err.(request.ErrInvalidParams))
|
|
}
|
|
}
|
|
if s.Headers != nil {
|
|
if err := s.Headers.Validate(); err != nil {
|
|
invalidParams.AddNested("Headers", err.(request.ErrInvalidParams))
|
|
}
|
|
}
|
|
if s.QueryStringCacheKeys != nil {
|
|
if err := s.QueryStringCacheKeys.Validate(); err != nil {
|
|
invalidParams.AddNested("QueryStringCacheKeys", err.(request.ErrInvalidParams))
|
|
}
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetCookies sets the Cookies field's value.
|
|
func (s *ForwardedValues) SetCookies(v *CookiePreference) *ForwardedValues {
|
|
s.Cookies = v
|
|
return s
|
|
}
|
|
|
|
// SetHeaders sets the Headers field's value.
|
|
func (s *ForwardedValues) SetHeaders(v *Headers) *ForwardedValues {
|
|
s.Headers = v
|
|
return s
|
|
}
|
|
|
|
// SetQueryString sets the QueryString field's value.
|
|
func (s *ForwardedValues) SetQueryString(v bool) *ForwardedValues {
|
|
s.QueryString = &v
|
|
return s
|
|
}
|
|
|
|
// SetQueryStringCacheKeys sets the QueryStringCacheKeys field's value.
|
|
func (s *ForwardedValues) SetQueryStringCacheKeys(v *QueryStringCacheKeys) *ForwardedValues {
|
|
s.QueryStringCacheKeys = v
|
|
return s
|
|
}
|
|
|
|
// A complex type that controls the countries in which your content is distributed.
|
|
// CloudFront determines the location of your users using MaxMind GeoIP databases.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/GeoRestriction
|
|
type GeoRestriction struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// A complex type that contains a Location element for each country in which
|
|
// you want CloudFront either to distribute your content (whitelist) or not
|
|
// distribute your content (blacklist).
|
|
//
|
|
// The Location element is a two-letter, uppercase country code for a country
|
|
// that you want to include in your blacklist or whitelist. Include one Location
|
|
// element for each country.
|
|
//
|
|
// CloudFront and MaxMind both use ISO 3166 country codes. For the current list
|
|
// of countries and the corresponding codes, see ISO 3166-1-alpha-2 code on
|
|
// the International Organization for Standardization website. You can also
|
|
// refer to the country list on the CloudFront console, which includes both
|
|
// country names and codes.
|
|
Items []*string `locationNameList:"Location" type:"list"`
|
|
|
|
// When geo restriction is enabled, this is the number of countries in your
|
|
// whitelist or blacklist. Otherwise, when it is not enabled, Quantity is 0,
|
|
// and you can omit Items.
|
|
//
|
|
// Quantity is a required field
|
|
Quantity *int64 `type:"integer" required:"true"`
|
|
|
|
// The method that you want to use to restrict distribution of your content
|
|
// by country:
|
|
//
|
|
// * none: No geo restriction is enabled, meaning access to content is not
|
|
// restricted by client geo location.
|
|
//
|
|
// * blacklist: The Location elements specify the countries in which you
|
|
// don't want CloudFront to distribute your content.
|
|
//
|
|
// * whitelist: The Location elements specify the countries in which you
|
|
// want CloudFront to distribute your content.
|
|
//
|
|
// RestrictionType is a required field
|
|
RestrictionType *string `type:"string" required:"true" enum:"GeoRestrictionType"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s GeoRestriction) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s GeoRestriction) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *GeoRestriction) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "GeoRestriction"}
|
|
if s.Quantity == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Quantity"))
|
|
}
|
|
if s.RestrictionType == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("RestrictionType"))
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetItems sets the Items field's value.
|
|
func (s *GeoRestriction) SetItems(v []*string) *GeoRestriction {
|
|
s.Items = v
|
|
return s
|
|
}
|
|
|
|
// SetQuantity sets the Quantity field's value.
|
|
func (s *GeoRestriction) SetQuantity(v int64) *GeoRestriction {
|
|
s.Quantity = &v
|
|
return s
|
|
}
|
|
|
|
// SetRestrictionType sets the RestrictionType field's value.
|
|
func (s *GeoRestriction) SetRestrictionType(v string) *GeoRestriction {
|
|
s.RestrictionType = &v
|
|
return s
|
|
}
|
|
|
|
// The origin access identity's configuration information. For more information,
|
|
// see CloudFrontOriginAccessIdentityConfigComplexType.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/GetCloudFrontOriginAccessIdentityConfigRequest
|
|
type GetCloudFrontOriginAccessIdentityConfigInput struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// The identity's ID.
|
|
//
|
|
// Id is a required field
|
|
Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s GetCloudFrontOriginAccessIdentityConfigInput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s GetCloudFrontOriginAccessIdentityConfigInput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *GetCloudFrontOriginAccessIdentityConfigInput) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "GetCloudFrontOriginAccessIdentityConfigInput"}
|
|
if s.Id == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Id"))
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetId sets the Id field's value.
|
|
func (s *GetCloudFrontOriginAccessIdentityConfigInput) SetId(v string) *GetCloudFrontOriginAccessIdentityConfigInput {
|
|
s.Id = &v
|
|
return s
|
|
}
|
|
|
|
// The returned result of the corresponding request.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/GetCloudFrontOriginAccessIdentityConfigResult
|
|
type GetCloudFrontOriginAccessIdentityConfigOutput struct {
|
|
_ struct{} `type:"structure" payload:"CloudFrontOriginAccessIdentityConfig"`
|
|
|
|
// The origin access identity's configuration information.
|
|
CloudFrontOriginAccessIdentityConfig *OriginAccessIdentityConfig `type:"structure"`
|
|
|
|
// The current version of the configuration. For example: E2QWRUHAPOMQZL.
|
|
ETag *string `location:"header" locationName:"ETag" type:"string"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s GetCloudFrontOriginAccessIdentityConfigOutput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s GetCloudFrontOriginAccessIdentityConfigOutput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// SetCloudFrontOriginAccessIdentityConfig sets the CloudFrontOriginAccessIdentityConfig field's value.
|
|
func (s *GetCloudFrontOriginAccessIdentityConfigOutput) SetCloudFrontOriginAccessIdentityConfig(v *OriginAccessIdentityConfig) *GetCloudFrontOriginAccessIdentityConfigOutput {
|
|
s.CloudFrontOriginAccessIdentityConfig = v
|
|
return s
|
|
}
|
|
|
|
// SetETag sets the ETag field's value.
|
|
func (s *GetCloudFrontOriginAccessIdentityConfigOutput) SetETag(v string) *GetCloudFrontOriginAccessIdentityConfigOutput {
|
|
s.ETag = &v
|
|
return s
|
|
}
|
|
|
|
// The request to get an origin access identity's information.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/GetCloudFrontOriginAccessIdentityRequest
|
|
type GetCloudFrontOriginAccessIdentityInput struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// The identity's ID.
|
|
//
|
|
// Id is a required field
|
|
Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s GetCloudFrontOriginAccessIdentityInput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s GetCloudFrontOriginAccessIdentityInput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *GetCloudFrontOriginAccessIdentityInput) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "GetCloudFrontOriginAccessIdentityInput"}
|
|
if s.Id == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Id"))
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetId sets the Id field's value.
|
|
func (s *GetCloudFrontOriginAccessIdentityInput) SetId(v string) *GetCloudFrontOriginAccessIdentityInput {
|
|
s.Id = &v
|
|
return s
|
|
}
|
|
|
|
// The returned result of the corresponding request.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/GetCloudFrontOriginAccessIdentityResult
|
|
type GetCloudFrontOriginAccessIdentityOutput struct {
|
|
_ struct{} `type:"structure" payload:"CloudFrontOriginAccessIdentity"`
|
|
|
|
// The origin access identity's information.
|
|
CloudFrontOriginAccessIdentity *OriginAccessIdentity `type:"structure"`
|
|
|
|
// The current version of the origin access identity's information. For example:
|
|
// E2QWRUHAPOMQZL.
|
|
ETag *string `location:"header" locationName:"ETag" type:"string"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s GetCloudFrontOriginAccessIdentityOutput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s GetCloudFrontOriginAccessIdentityOutput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// SetCloudFrontOriginAccessIdentity sets the CloudFrontOriginAccessIdentity field's value.
|
|
func (s *GetCloudFrontOriginAccessIdentityOutput) SetCloudFrontOriginAccessIdentity(v *OriginAccessIdentity) *GetCloudFrontOriginAccessIdentityOutput {
|
|
s.CloudFrontOriginAccessIdentity = v
|
|
return s
|
|
}
|
|
|
|
// SetETag sets the ETag field's value.
|
|
func (s *GetCloudFrontOriginAccessIdentityOutput) SetETag(v string) *GetCloudFrontOriginAccessIdentityOutput {
|
|
s.ETag = &v
|
|
return s
|
|
}
|
|
|
|
// The request to get a distribution configuration.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/GetDistributionConfigRequest
|
|
type GetDistributionConfigInput struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// The distribution's ID.
|
|
//
|
|
// Id is a required field
|
|
Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s GetDistributionConfigInput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s GetDistributionConfigInput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *GetDistributionConfigInput) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "GetDistributionConfigInput"}
|
|
if s.Id == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Id"))
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetId sets the Id field's value.
|
|
func (s *GetDistributionConfigInput) SetId(v string) *GetDistributionConfigInput {
|
|
s.Id = &v
|
|
return s
|
|
}
|
|
|
|
// The returned result of the corresponding request.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/GetDistributionConfigResult
|
|
type GetDistributionConfigOutput struct {
|
|
_ struct{} `type:"structure" payload:"DistributionConfig"`
|
|
|
|
// The distribution's configuration information.
|
|
DistributionConfig *DistributionConfig `type:"structure"`
|
|
|
|
// The current version of the configuration. For example: E2QWRUHAPOMQZL.
|
|
ETag *string `location:"header" locationName:"ETag" type:"string"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s GetDistributionConfigOutput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s GetDistributionConfigOutput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// SetDistributionConfig sets the DistributionConfig field's value.
|
|
func (s *GetDistributionConfigOutput) SetDistributionConfig(v *DistributionConfig) *GetDistributionConfigOutput {
|
|
s.DistributionConfig = v
|
|
return s
|
|
}
|
|
|
|
// SetETag sets the ETag field's value.
|
|
func (s *GetDistributionConfigOutput) SetETag(v string) *GetDistributionConfigOutput {
|
|
s.ETag = &v
|
|
return s
|
|
}
|
|
|
|
// The request to get a distribution's information.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/GetDistributionRequest
|
|
type GetDistributionInput struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// The distribution's ID.
|
|
//
|
|
// Id is a required field
|
|
Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s GetDistributionInput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s GetDistributionInput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *GetDistributionInput) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "GetDistributionInput"}
|
|
if s.Id == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Id"))
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetId sets the Id field's value.
|
|
func (s *GetDistributionInput) SetId(v string) *GetDistributionInput {
|
|
s.Id = &v
|
|
return s
|
|
}
|
|
|
|
// The returned result of the corresponding request.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/GetDistributionResult
|
|
type GetDistributionOutput struct {
|
|
_ struct{} `type:"structure" payload:"Distribution"`
|
|
|
|
// The distribution's information.
|
|
Distribution *Distribution `type:"structure"`
|
|
|
|
// The current version of the distribution's information. For example: E2QWRUHAPOMQZL.
|
|
ETag *string `location:"header" locationName:"ETag" type:"string"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s GetDistributionOutput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s GetDistributionOutput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// SetDistribution sets the Distribution field's value.
|
|
func (s *GetDistributionOutput) SetDistribution(v *Distribution) *GetDistributionOutput {
|
|
s.Distribution = v
|
|
return s
|
|
}
|
|
|
|
// SetETag sets the ETag field's value.
|
|
func (s *GetDistributionOutput) SetETag(v string) *GetDistributionOutput {
|
|
s.ETag = &v
|
|
return s
|
|
}
|
|
|
|
// The request to get an invalidation's information.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/GetInvalidationRequest
|
|
type GetInvalidationInput struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// The distribution's ID.
|
|
//
|
|
// DistributionId is a required field
|
|
DistributionId *string `location:"uri" locationName:"DistributionId" type:"string" required:"true"`
|
|
|
|
// The identifier for the invalidation request, for example, IDFDVBD632BHDS5.
|
|
//
|
|
// Id is a required field
|
|
Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s GetInvalidationInput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s GetInvalidationInput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *GetInvalidationInput) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "GetInvalidationInput"}
|
|
if s.DistributionId == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("DistributionId"))
|
|
}
|
|
if s.Id == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Id"))
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetDistributionId sets the DistributionId field's value.
|
|
func (s *GetInvalidationInput) SetDistributionId(v string) *GetInvalidationInput {
|
|
s.DistributionId = &v
|
|
return s
|
|
}
|
|
|
|
// SetId sets the Id field's value.
|
|
func (s *GetInvalidationInput) SetId(v string) *GetInvalidationInput {
|
|
s.Id = &v
|
|
return s
|
|
}
|
|
|
|
// The returned result of the corresponding request.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/GetInvalidationResult
|
|
type GetInvalidationOutput struct {
|
|
_ struct{} `type:"structure" payload:"Invalidation"`
|
|
|
|
// The invalidation's information. For more information, see Invalidation Complex
|
|
// Type (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/InvalidationDatatype.html).
|
|
Invalidation *Invalidation `type:"structure"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s GetInvalidationOutput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s GetInvalidationOutput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// SetInvalidation sets the Invalidation field's value.
|
|
func (s *GetInvalidationOutput) SetInvalidation(v *Invalidation) *GetInvalidationOutput {
|
|
s.Invalidation = v
|
|
return s
|
|
}
|
|
|
|
// To request to get a streaming distribution configuration.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/GetStreamingDistributionConfigRequest
|
|
type GetStreamingDistributionConfigInput struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// The streaming distribution's ID.
|
|
//
|
|
// Id is a required field
|
|
Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s GetStreamingDistributionConfigInput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s GetStreamingDistributionConfigInput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *GetStreamingDistributionConfigInput) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "GetStreamingDistributionConfigInput"}
|
|
if s.Id == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Id"))
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetId sets the Id field's value.
|
|
func (s *GetStreamingDistributionConfigInput) SetId(v string) *GetStreamingDistributionConfigInput {
|
|
s.Id = &v
|
|
return s
|
|
}
|
|
|
|
// The returned result of the corresponding request.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/GetStreamingDistributionConfigResult
|
|
type GetStreamingDistributionConfigOutput struct {
|
|
_ struct{} `type:"structure" payload:"StreamingDistributionConfig"`
|
|
|
|
// The current version of the configuration. For example: E2QWRUHAPOMQZL.
|
|
ETag *string `location:"header" locationName:"ETag" type:"string"`
|
|
|
|
// The streaming distribution's configuration information.
|
|
StreamingDistributionConfig *StreamingDistributionConfig `type:"structure"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s GetStreamingDistributionConfigOutput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s GetStreamingDistributionConfigOutput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// SetETag sets the ETag field's value.
|
|
func (s *GetStreamingDistributionConfigOutput) SetETag(v string) *GetStreamingDistributionConfigOutput {
|
|
s.ETag = &v
|
|
return s
|
|
}
|
|
|
|
// SetStreamingDistributionConfig sets the StreamingDistributionConfig field's value.
|
|
func (s *GetStreamingDistributionConfigOutput) SetStreamingDistributionConfig(v *StreamingDistributionConfig) *GetStreamingDistributionConfigOutput {
|
|
s.StreamingDistributionConfig = v
|
|
return s
|
|
}
|
|
|
|
// The request to get a streaming distribution's information.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/GetStreamingDistributionRequest
|
|
type GetStreamingDistributionInput struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// The streaming distribution's ID.
|
|
//
|
|
// Id is a required field
|
|
Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s GetStreamingDistributionInput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s GetStreamingDistributionInput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *GetStreamingDistributionInput) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "GetStreamingDistributionInput"}
|
|
if s.Id == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Id"))
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetId sets the Id field's value.
|
|
func (s *GetStreamingDistributionInput) SetId(v string) *GetStreamingDistributionInput {
|
|
s.Id = &v
|
|
return s
|
|
}
|
|
|
|
// The returned result of the corresponding request.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/GetStreamingDistributionResult
|
|
type GetStreamingDistributionOutput struct {
|
|
_ struct{} `type:"structure" payload:"StreamingDistribution"`
|
|
|
|
// The current version of the streaming distribution's information. For example:
|
|
// E2QWRUHAPOMQZL.
|
|
ETag *string `location:"header" locationName:"ETag" type:"string"`
|
|
|
|
// The streaming distribution's information.
|
|
StreamingDistribution *StreamingDistribution `type:"structure"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s GetStreamingDistributionOutput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s GetStreamingDistributionOutput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// SetETag sets the ETag field's value.
|
|
func (s *GetStreamingDistributionOutput) SetETag(v string) *GetStreamingDistributionOutput {
|
|
s.ETag = &v
|
|
return s
|
|
}
|
|
|
|
// SetStreamingDistribution sets the StreamingDistribution field's value.
|
|
func (s *GetStreamingDistributionOutput) SetStreamingDistribution(v *StreamingDistribution) *GetStreamingDistributionOutput {
|
|
s.StreamingDistribution = v
|
|
return s
|
|
}
|
|
|
|
// A complex type that specifies the request headers, if any, that you want
|
|
// CloudFront to base caching on for this cache behavior.
|
|
//
|
|
// For the headers that you specify, CloudFront caches separate versions of
|
|
// a specified object based on the header values in viewer requests. For example,
|
|
// suppose viewer requests for logo.jpg contain a custom product header that
|
|
// has a value of either acme or apex, and you configure CloudFront to cache
|
|
// your content based on values in the product header. CloudFront forwards the
|
|
// product header to the origin and caches the response from the origin once
|
|
// for each header value. For more information about caching based on header
|
|
// values, see How CloudFront Forwards and Caches Headers (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/header-caching.html)
|
|
// in the Amazon CloudFront Developer Guide.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/Headers
|
|
type Headers struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// A list that contains one Name element for each header that you want CloudFront
|
|
// to use for caching in this cache behavior. If Quantity is 0, omit Items.
|
|
Items []*string `locationNameList:"Name" type:"list"`
|
|
|
|
// The number of different headers that you want CloudFront to base caching
|
|
// on for this cache behavior. You can configure each cache behavior in a web
|
|
// distribution to do one of the following:
|
|
//
|
|
// * Forward all headers to your origin: Specify 1 for Quantity and * for
|
|
// Name.
|
|
//
|
|
// CloudFront doesn't cache the objects that are associated with this cache
|
|
// behavior. Instead, CloudFront sends every request to the origin.
|
|
//
|
|
// * Forward a whitelist of headers you specify: Specify the number of headers
|
|
// that you want CloudFront to base caching on. Then specify the header names
|
|
// in Name elements. CloudFront caches your objects based on the values in
|
|
// the specified headers.
|
|
//
|
|
// * Forward only the default headers: Specify 0 for Quantity and omit Items.
|
|
// In this configuration, CloudFront doesn't cache based on the values in
|
|
// the request headers.
|
|
//
|
|
// Regardless of which option you choose, CloudFront forwards headers to your
|
|
// origin based on whether the origin is an S3 bucket or a custom origin. See
|
|
// the following documentation:
|
|
//
|
|
// * S3 bucket: See HTTP Request Headers That CloudFront Removes or Updates
|
|
// (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/RequestAndResponseBehaviorS3Origin.html#request-s3-removed-headers)
|
|
//
|
|
// * Custom origin: See HTTP Request Headers and CloudFront Behavior (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/RequestAndResponseBehaviorCustomOrigin.html#request-custom-headers-behavior)
|
|
//
|
|
// Quantity is a required field
|
|
Quantity *int64 `type:"integer" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s Headers) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s Headers) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *Headers) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "Headers"}
|
|
if s.Quantity == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Quantity"))
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetItems sets the Items field's value.
|
|
func (s *Headers) SetItems(v []*string) *Headers {
|
|
s.Items = v
|
|
return s
|
|
}
|
|
|
|
// SetQuantity sets the Quantity field's value.
|
|
func (s *Headers) SetQuantity(v int64) *Headers {
|
|
s.Quantity = &v
|
|
return s
|
|
}
|
|
|
|
// An invalidation.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/Invalidation
|
|
type Invalidation struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// The date and time the invalidation request was first made.
|
|
//
|
|
// CreateTime is a required field
|
|
CreateTime *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"`
|
|
|
|
// The identifier for the invalidation request. For example: IDFDVBD632BHDS5.
|
|
//
|
|
// Id is a required field
|
|
Id *string `type:"string" required:"true"`
|
|
|
|
// The current invalidation information for the batch request.
|
|
//
|
|
// InvalidationBatch is a required field
|
|
InvalidationBatch *InvalidationBatch `type:"structure" required:"true"`
|
|
|
|
// The status of the invalidation request. When the invalidation batch is finished,
|
|
// the status is Completed.
|
|
//
|
|
// Status is a required field
|
|
Status *string `type:"string" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s Invalidation) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s Invalidation) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// SetCreateTime sets the CreateTime field's value.
|
|
func (s *Invalidation) SetCreateTime(v time.Time) *Invalidation {
|
|
s.CreateTime = &v
|
|
return s
|
|
}
|
|
|
|
// SetId sets the Id field's value.
|
|
func (s *Invalidation) SetId(v string) *Invalidation {
|
|
s.Id = &v
|
|
return s
|
|
}
|
|
|
|
// SetInvalidationBatch sets the InvalidationBatch field's value.
|
|
func (s *Invalidation) SetInvalidationBatch(v *InvalidationBatch) *Invalidation {
|
|
s.InvalidationBatch = v
|
|
return s
|
|
}
|
|
|
|
// SetStatus sets the Status field's value.
|
|
func (s *Invalidation) SetStatus(v string) *Invalidation {
|
|
s.Status = &v
|
|
return s
|
|
}
|
|
|
|
// An invalidation batch.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/InvalidationBatch
|
|
type InvalidationBatch struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// A value that you specify to uniquely identify an invalidation request. CloudFront
|
|
// uses the value to prevent you from accidentally resubmitting an identical
|
|
// request. Whenever you create a new invalidation request, you must specify
|
|
// a new value for CallerReference and change other values in the request as
|
|
// applicable. One way to ensure that the value of CallerReference is unique
|
|
// is to use a timestamp, for example, 20120301090000.
|
|
//
|
|
// If you make a second invalidation request with the same value for CallerReference,
|
|
// and if the rest of the request is the same, CloudFront doesn't create a new
|
|
// invalidation request. Instead, CloudFront returns information about the invalidation
|
|
// request that you previously created with the same CallerReference.
|
|
//
|
|
// If CallerReference is a value you already sent in a previous invalidation
|
|
// batch request but the content of any Path is different from the original
|
|
// request, CloudFront returns an InvalidationBatchAlreadyExists error.
|
|
//
|
|
// CallerReference is a required field
|
|
CallerReference *string `type:"string" required:"true"`
|
|
|
|
// A complex type that contains information about the objects that you want
|
|
// to invalidate. For more information, see Specifying the Objects to Invalidate
|
|
// (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Invalidation.html#invalidation-specifying-objects)
|
|
// in the Amazon CloudFront Developer Guide.
|
|
//
|
|
// Paths is a required field
|
|
Paths *Paths `type:"structure" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s InvalidationBatch) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s InvalidationBatch) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *InvalidationBatch) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "InvalidationBatch"}
|
|
if s.CallerReference == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("CallerReference"))
|
|
}
|
|
if s.Paths == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Paths"))
|
|
}
|
|
if s.Paths != nil {
|
|
if err := s.Paths.Validate(); err != nil {
|
|
invalidParams.AddNested("Paths", err.(request.ErrInvalidParams))
|
|
}
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetCallerReference sets the CallerReference field's value.
|
|
func (s *InvalidationBatch) SetCallerReference(v string) *InvalidationBatch {
|
|
s.CallerReference = &v
|
|
return s
|
|
}
|
|
|
|
// SetPaths sets the Paths field's value.
|
|
func (s *InvalidationBatch) SetPaths(v *Paths) *InvalidationBatch {
|
|
s.Paths = v
|
|
return s
|
|
}
|
|
|
|
// The InvalidationList complex type describes the list of invalidation objects.
|
|
// For more information about invalidation, see Invalidating Objects (Web Distributions
|
|
// Only) (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Invalidation.html)
|
|
// in the Amazon CloudFront Developer Guide.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/InvalidationList
|
|
type InvalidationList struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// A flag that indicates whether more invalidation batch requests remain to
|
|
// be listed. If your results were truncated, you can make a follow-up pagination
|
|
// request using the Marker request parameter to retrieve more invalidation
|
|
// batches in the list.
|
|
//
|
|
// IsTruncated is a required field
|
|
IsTruncated *bool `type:"boolean" required:"true"`
|
|
|
|
// A complex type that contains one InvalidationSummary element for each invalidation
|
|
// batch created by the current AWS account.
|
|
Items []*InvalidationSummary `locationNameList:"InvalidationSummary" type:"list"`
|
|
|
|
// The value that you provided for the Marker request parameter.
|
|
//
|
|
// Marker is a required field
|
|
Marker *string `type:"string" required:"true"`
|
|
|
|
// The value that you provided for the MaxItems request parameter.
|
|
//
|
|
// MaxItems is a required field
|
|
MaxItems *int64 `type:"integer" required:"true"`
|
|
|
|
// If IsTruncated is true, this element is present and contains the value that
|
|
// you can use for the Marker request parameter to continue listing your invalidation
|
|
// batches where they left off.
|
|
NextMarker *string `type:"string"`
|
|
|
|
// The number of invalidation batches that were created by the current AWS account.
|
|
//
|
|
// Quantity is a required field
|
|
Quantity *int64 `type:"integer" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s InvalidationList) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s InvalidationList) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// SetIsTruncated sets the IsTruncated field's value.
|
|
func (s *InvalidationList) SetIsTruncated(v bool) *InvalidationList {
|
|
s.IsTruncated = &v
|
|
return s
|
|
}
|
|
|
|
// SetItems sets the Items field's value.
|
|
func (s *InvalidationList) SetItems(v []*InvalidationSummary) *InvalidationList {
|
|
s.Items = v
|
|
return s
|
|
}
|
|
|
|
// SetMarker sets the Marker field's value.
|
|
func (s *InvalidationList) SetMarker(v string) *InvalidationList {
|
|
s.Marker = &v
|
|
return s
|
|
}
|
|
|
|
// SetMaxItems sets the MaxItems field's value.
|
|
func (s *InvalidationList) SetMaxItems(v int64) *InvalidationList {
|
|
s.MaxItems = &v
|
|
return s
|
|
}
|
|
|
|
// SetNextMarker sets the NextMarker field's value.
|
|
func (s *InvalidationList) SetNextMarker(v string) *InvalidationList {
|
|
s.NextMarker = &v
|
|
return s
|
|
}
|
|
|
|
// SetQuantity sets the Quantity field's value.
|
|
func (s *InvalidationList) SetQuantity(v int64) *InvalidationList {
|
|
s.Quantity = &v
|
|
return s
|
|
}
|
|
|
|
// A summary of an invalidation request.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/InvalidationSummary
|
|
type InvalidationSummary struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// CreateTime is a required field
|
|
CreateTime *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"`
|
|
|
|
// The unique ID for an invalidation request.
|
|
//
|
|
// Id is a required field
|
|
Id *string `type:"string" required:"true"`
|
|
|
|
// The status of an invalidation request.
|
|
//
|
|
// Status is a required field
|
|
Status *string `type:"string" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s InvalidationSummary) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s InvalidationSummary) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// SetCreateTime sets the CreateTime field's value.
|
|
func (s *InvalidationSummary) SetCreateTime(v time.Time) *InvalidationSummary {
|
|
s.CreateTime = &v
|
|
return s
|
|
}
|
|
|
|
// SetId sets the Id field's value.
|
|
func (s *InvalidationSummary) SetId(v string) *InvalidationSummary {
|
|
s.Id = &v
|
|
return s
|
|
}
|
|
|
|
// SetStatus sets the Status field's value.
|
|
func (s *InvalidationSummary) SetStatus(v string) *InvalidationSummary {
|
|
s.Status = &v
|
|
return s
|
|
}
|
|
|
|
// A complex type that lists the active CloudFront key pairs, if any, that are
|
|
// associated with AwsAccountNumber.
|
|
//
|
|
// For more information, see ActiveTrustedSigners.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/KeyPairIds
|
|
type KeyPairIds struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// A complex type that lists the active CloudFront key pairs, if any, that are
|
|
// associated with AwsAccountNumber.
|
|
//
|
|
// For more information, see ActiveTrustedSigners.
|
|
Items []*string `locationNameList:"KeyPairId" type:"list"`
|
|
|
|
// The number of active CloudFront key pairs for AwsAccountNumber.
|
|
//
|
|
// For more information, see ActiveTrustedSigners.
|
|
//
|
|
// Quantity is a required field
|
|
Quantity *int64 `type:"integer" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s KeyPairIds) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s KeyPairIds) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// SetItems sets the Items field's value.
|
|
func (s *KeyPairIds) SetItems(v []*string) *KeyPairIds {
|
|
s.Items = v
|
|
return s
|
|
}
|
|
|
|
// SetQuantity sets the Quantity field's value.
|
|
func (s *KeyPairIds) SetQuantity(v int64) *KeyPairIds {
|
|
s.Quantity = &v
|
|
return s
|
|
}
|
|
|
|
// A complex type that contains a Lambda function association.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/LambdaFunctionAssociation
|
|
type LambdaFunctionAssociation struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// Specifies the event type that triggers a Lambda function invocation. You
|
|
// can specify the following values:
|
|
//
|
|
// * viewer-request: The function executes when CloudFront receives a request
|
|
// from a viewer and before it checks to see whether the requested object
|
|
// is in the edge cache.
|
|
//
|
|
// * origin-request: The function executes only when CloudFront forwards
|
|
// a request to your origin. When the requested object is in the edge cache,
|
|
// the function doesn't execute.
|
|
//
|
|
// * origin-response: The function executes after CloudFront receives a response
|
|
// from the origin and before it caches the object in the response. When
|
|
// the requested object is in the edge cache, the function doesn't execute.
|
|
//
|
|
// If the origin returns an HTTP status code other than HTTP 200 (OK), the function
|
|
// doesn't execute.
|
|
//
|
|
// * viewer-response: The function executes before CloudFront returns the
|
|
// requested object to the viewer. The function executes regardless of whether
|
|
// the object was already in the edge cache.
|
|
//
|
|
// If the origin returns an HTTP status code other than HTTP 200 (OK), the function
|
|
// doesn't execute.
|
|
EventType *string `type:"string" enum:"EventType"`
|
|
|
|
// The ARN of the Lambda function. You must specify the ARN of a function version;
|
|
// you can't specify a Lambda alias or $LATEST.
|
|
LambdaFunctionARN *string `type:"string"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s LambdaFunctionAssociation) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s LambdaFunctionAssociation) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// SetEventType sets the EventType field's value.
|
|
func (s *LambdaFunctionAssociation) SetEventType(v string) *LambdaFunctionAssociation {
|
|
s.EventType = &v
|
|
return s
|
|
}
|
|
|
|
// SetLambdaFunctionARN sets the LambdaFunctionARN field's value.
|
|
func (s *LambdaFunctionAssociation) SetLambdaFunctionARN(v string) *LambdaFunctionAssociation {
|
|
s.LambdaFunctionARN = &v
|
|
return s
|
|
}
|
|
|
|
// A complex type that specifies a list of Lambda functions associations for
|
|
// a cache behavior.
|
|
//
|
|
// If you want to invoke one or more Lambda functions triggered by requests
|
|
// that match the PathPattern of the cache behavior, specify the applicable
|
|
// values for Quantity and Items. Note that there can be up to 4 LambdaFunctionAssociation
|
|
// items in this list (one for each possible value of EventType) and each EventType
|
|
// can be associated with the Lambda function only once.
|
|
//
|
|
// If you don't want to invoke any Lambda functions for the requests that match
|
|
// PathPattern, specify 0 for Quantity and omit Items.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/LambdaFunctionAssociations
|
|
type LambdaFunctionAssociations struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// Optional: A complex type that contains LambdaFunctionAssociation items for
|
|
// this cache behavior. If Quantity is 0, you can omit Items.
|
|
Items []*LambdaFunctionAssociation `locationNameList:"LambdaFunctionAssociation" type:"list"`
|
|
|
|
// The number of Lambda function associations for this cache behavior.
|
|
//
|
|
// Quantity is a required field
|
|
Quantity *int64 `type:"integer" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s LambdaFunctionAssociations) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s LambdaFunctionAssociations) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *LambdaFunctionAssociations) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "LambdaFunctionAssociations"}
|
|
if s.Quantity == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Quantity"))
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetItems sets the Items field's value.
|
|
func (s *LambdaFunctionAssociations) SetItems(v []*LambdaFunctionAssociation) *LambdaFunctionAssociations {
|
|
s.Items = v
|
|
return s
|
|
}
|
|
|
|
// SetQuantity sets the Quantity field's value.
|
|
func (s *LambdaFunctionAssociations) SetQuantity(v int64) *LambdaFunctionAssociations {
|
|
s.Quantity = &v
|
|
return s
|
|
}
|
|
|
|
// The request to list origin access identities.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/ListCloudFrontOriginAccessIdentitiesRequest
|
|
type ListCloudFrontOriginAccessIdentitiesInput struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// Use this when paginating results to indicate where to begin in your list
|
|
// of origin access identities. The results include identities in the list that
|
|
// occur after the marker. To get the next page of results, set the Marker to
|
|
// the value of the NextMarker from the current page's response (which is also
|
|
// the ID of the last identity on that page).
|
|
Marker *string `location:"querystring" locationName:"Marker" type:"string"`
|
|
|
|
// The maximum number of origin access identities you want in the response body.
|
|
MaxItems *int64 `location:"querystring" locationName:"MaxItems" type:"integer"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s ListCloudFrontOriginAccessIdentitiesInput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s ListCloudFrontOriginAccessIdentitiesInput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// SetMarker sets the Marker field's value.
|
|
func (s *ListCloudFrontOriginAccessIdentitiesInput) SetMarker(v string) *ListCloudFrontOriginAccessIdentitiesInput {
|
|
s.Marker = &v
|
|
return s
|
|
}
|
|
|
|
// SetMaxItems sets the MaxItems field's value.
|
|
func (s *ListCloudFrontOriginAccessIdentitiesInput) SetMaxItems(v int64) *ListCloudFrontOriginAccessIdentitiesInput {
|
|
s.MaxItems = &v
|
|
return s
|
|
}
|
|
|
|
// The returned result of the corresponding request.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/ListCloudFrontOriginAccessIdentitiesResult
|
|
type ListCloudFrontOriginAccessIdentitiesOutput struct {
|
|
_ struct{} `type:"structure" payload:"CloudFrontOriginAccessIdentityList"`
|
|
|
|
// The CloudFrontOriginAccessIdentityList type.
|
|
CloudFrontOriginAccessIdentityList *OriginAccessIdentityList `type:"structure"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s ListCloudFrontOriginAccessIdentitiesOutput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s ListCloudFrontOriginAccessIdentitiesOutput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// SetCloudFrontOriginAccessIdentityList sets the CloudFrontOriginAccessIdentityList field's value.
|
|
func (s *ListCloudFrontOriginAccessIdentitiesOutput) SetCloudFrontOriginAccessIdentityList(v *OriginAccessIdentityList) *ListCloudFrontOriginAccessIdentitiesOutput {
|
|
s.CloudFrontOriginAccessIdentityList = v
|
|
return s
|
|
}
|
|
|
|
// The request to list distributions that are associated with a specified AWS
|
|
// WAF web ACL.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/ListDistributionsByWebACLIdRequest
|
|
type ListDistributionsByWebACLIdInput struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// Use Marker and MaxItems to control pagination of results. If you have more
|
|
// than MaxItems distributions that satisfy the request, the response includes
|
|
// a NextMarker element. To get the next page of results, submit another request.
|
|
// For the value of Marker, specify the value of NextMarker from the last response.
|
|
// (For the first request, omit Marker.)
|
|
Marker *string `location:"querystring" locationName:"Marker" type:"string"`
|
|
|
|
// The maximum number of distributions that you want CloudFront to return in
|
|
// the response body. The maximum and default values are both 100.
|
|
MaxItems *int64 `location:"querystring" locationName:"MaxItems" type:"integer"`
|
|
|
|
// The ID of the AWS WAF web ACL that you want to list the associated distributions.
|
|
// If you specify "null" for the ID, the request returns a list of the distributions
|
|
// that aren't associated with a web ACL.
|
|
//
|
|
// WebACLId is a required field
|
|
WebACLId *string `location:"uri" locationName:"WebACLId" type:"string" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s ListDistributionsByWebACLIdInput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s ListDistributionsByWebACLIdInput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *ListDistributionsByWebACLIdInput) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "ListDistributionsByWebACLIdInput"}
|
|
if s.WebACLId == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("WebACLId"))
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetMarker sets the Marker field's value.
|
|
func (s *ListDistributionsByWebACLIdInput) SetMarker(v string) *ListDistributionsByWebACLIdInput {
|
|
s.Marker = &v
|
|
return s
|
|
}
|
|
|
|
// SetMaxItems sets the MaxItems field's value.
|
|
func (s *ListDistributionsByWebACLIdInput) SetMaxItems(v int64) *ListDistributionsByWebACLIdInput {
|
|
s.MaxItems = &v
|
|
return s
|
|
}
|
|
|
|
// SetWebACLId sets the WebACLId field's value.
|
|
func (s *ListDistributionsByWebACLIdInput) SetWebACLId(v string) *ListDistributionsByWebACLIdInput {
|
|
s.WebACLId = &v
|
|
return s
|
|
}
|
|
|
|
// The response to a request to list the distributions that are associated with
|
|
// a specified AWS WAF web ACL.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/ListDistributionsByWebACLIdResult
|
|
type ListDistributionsByWebACLIdOutput struct {
|
|
_ struct{} `type:"structure" payload:"DistributionList"`
|
|
|
|
// The DistributionList type.
|
|
DistributionList *DistributionList `type:"structure"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s ListDistributionsByWebACLIdOutput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s ListDistributionsByWebACLIdOutput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// SetDistributionList sets the DistributionList field's value.
|
|
func (s *ListDistributionsByWebACLIdOutput) SetDistributionList(v *DistributionList) *ListDistributionsByWebACLIdOutput {
|
|
s.DistributionList = v
|
|
return s
|
|
}
|
|
|
|
// The request to list your distributions.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/ListDistributionsRequest
|
|
type ListDistributionsInput struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// Use this when paginating results to indicate where to begin in your list
|
|
// of distributions. The results include distributions in the list that occur
|
|
// after the marker. To get the next page of results, set the Marker to the
|
|
// value of the NextMarker from the current page's response (which is also the
|
|
// ID of the last distribution on that page).
|
|
Marker *string `location:"querystring" locationName:"Marker" type:"string"`
|
|
|
|
// The maximum number of distributions you want in the response body.
|
|
MaxItems *int64 `location:"querystring" locationName:"MaxItems" type:"integer"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s ListDistributionsInput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s ListDistributionsInput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// SetMarker sets the Marker field's value.
|
|
func (s *ListDistributionsInput) SetMarker(v string) *ListDistributionsInput {
|
|
s.Marker = &v
|
|
return s
|
|
}
|
|
|
|
// SetMaxItems sets the MaxItems field's value.
|
|
func (s *ListDistributionsInput) SetMaxItems(v int64) *ListDistributionsInput {
|
|
s.MaxItems = &v
|
|
return s
|
|
}
|
|
|
|
// The returned result of the corresponding request.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/ListDistributionsResult
|
|
type ListDistributionsOutput struct {
|
|
_ struct{} `type:"structure" payload:"DistributionList"`
|
|
|
|
// The DistributionList type.
|
|
DistributionList *DistributionList `type:"structure"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s ListDistributionsOutput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s ListDistributionsOutput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// SetDistributionList sets the DistributionList field's value.
|
|
func (s *ListDistributionsOutput) SetDistributionList(v *DistributionList) *ListDistributionsOutput {
|
|
s.DistributionList = v
|
|
return s
|
|
}
|
|
|
|
// The request to list invalidations.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/ListInvalidationsRequest
|
|
type ListInvalidationsInput struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// The distribution's ID.
|
|
//
|
|
// DistributionId is a required field
|
|
DistributionId *string `location:"uri" locationName:"DistributionId" type:"string" required:"true"`
|
|
|
|
// Use this parameter when paginating results to indicate where to begin in
|
|
// your list of invalidation batches. Because the results are returned in decreasing
|
|
// order from most recent to oldest, the most recent results are on the first
|
|
// page, the second page will contain earlier results, and so on. To get the
|
|
// next page of results, set Marker to the value of the NextMarker from the
|
|
// current page's response. This value is the same as the ID of the last invalidation
|
|
// batch on that page.
|
|
Marker *string `location:"querystring" locationName:"Marker" type:"string"`
|
|
|
|
// The maximum number of invalidation batches that you want in the response
|
|
// body.
|
|
MaxItems *int64 `location:"querystring" locationName:"MaxItems" type:"integer"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s ListInvalidationsInput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s ListInvalidationsInput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *ListInvalidationsInput) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "ListInvalidationsInput"}
|
|
if s.DistributionId == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("DistributionId"))
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetDistributionId sets the DistributionId field's value.
|
|
func (s *ListInvalidationsInput) SetDistributionId(v string) *ListInvalidationsInput {
|
|
s.DistributionId = &v
|
|
return s
|
|
}
|
|
|
|
// SetMarker sets the Marker field's value.
|
|
func (s *ListInvalidationsInput) SetMarker(v string) *ListInvalidationsInput {
|
|
s.Marker = &v
|
|
return s
|
|
}
|
|
|
|
// SetMaxItems sets the MaxItems field's value.
|
|
func (s *ListInvalidationsInput) SetMaxItems(v int64) *ListInvalidationsInput {
|
|
s.MaxItems = &v
|
|
return s
|
|
}
|
|
|
|
// The returned result of the corresponding request.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/ListInvalidationsResult
|
|
type ListInvalidationsOutput struct {
|
|
_ struct{} `type:"structure" payload:"InvalidationList"`
|
|
|
|
// Information about invalidation batches.
|
|
InvalidationList *InvalidationList `type:"structure"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s ListInvalidationsOutput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s ListInvalidationsOutput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// SetInvalidationList sets the InvalidationList field's value.
|
|
func (s *ListInvalidationsOutput) SetInvalidationList(v *InvalidationList) *ListInvalidationsOutput {
|
|
s.InvalidationList = v
|
|
return s
|
|
}
|
|
|
|
// The request to list your streaming distributions.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/ListStreamingDistributionsRequest
|
|
type ListStreamingDistributionsInput struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// The value that you provided for the Marker request parameter.
|
|
Marker *string `location:"querystring" locationName:"Marker" type:"string"`
|
|
|
|
// The value that you provided for the MaxItems request parameter.
|
|
MaxItems *int64 `location:"querystring" locationName:"MaxItems" type:"integer"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s ListStreamingDistributionsInput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s ListStreamingDistributionsInput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// SetMarker sets the Marker field's value.
|
|
func (s *ListStreamingDistributionsInput) SetMarker(v string) *ListStreamingDistributionsInput {
|
|
s.Marker = &v
|
|
return s
|
|
}
|
|
|
|
// SetMaxItems sets the MaxItems field's value.
|
|
func (s *ListStreamingDistributionsInput) SetMaxItems(v int64) *ListStreamingDistributionsInput {
|
|
s.MaxItems = &v
|
|
return s
|
|
}
|
|
|
|
// The returned result of the corresponding request.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/ListStreamingDistributionsResult
|
|
type ListStreamingDistributionsOutput struct {
|
|
_ struct{} `type:"structure" payload:"StreamingDistributionList"`
|
|
|
|
// The StreamingDistributionList type.
|
|
StreamingDistributionList *StreamingDistributionList `type:"structure"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s ListStreamingDistributionsOutput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s ListStreamingDistributionsOutput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// SetStreamingDistributionList sets the StreamingDistributionList field's value.
|
|
func (s *ListStreamingDistributionsOutput) SetStreamingDistributionList(v *StreamingDistributionList) *ListStreamingDistributionsOutput {
|
|
s.StreamingDistributionList = v
|
|
return s
|
|
}
|
|
|
|
// The request to list tags for a CloudFront resource.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/ListTagsForResourceRequest
|
|
type ListTagsForResourceInput struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// An ARN of a CloudFront resource.
|
|
//
|
|
// Resource is a required field
|
|
Resource *string `location:"querystring" locationName:"Resource" type:"string" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s ListTagsForResourceInput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s ListTagsForResourceInput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *ListTagsForResourceInput) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"}
|
|
if s.Resource == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Resource"))
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetResource sets the Resource field's value.
|
|
func (s *ListTagsForResourceInput) SetResource(v string) *ListTagsForResourceInput {
|
|
s.Resource = &v
|
|
return s
|
|
}
|
|
|
|
// The returned result of the corresponding request.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/ListTagsForResourceResult
|
|
type ListTagsForResourceOutput struct {
|
|
_ struct{} `type:"structure" payload:"Tags"`
|
|
|
|
// A complex type that contains zero or more Tag elements.
|
|
//
|
|
// Tags is a required field
|
|
Tags *Tags `type:"structure" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s ListTagsForResourceOutput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s ListTagsForResourceOutput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// SetTags sets the Tags field's value.
|
|
func (s *ListTagsForResourceOutput) SetTags(v *Tags) *ListTagsForResourceOutput {
|
|
s.Tags = v
|
|
return s
|
|
}
|
|
|
|
// A complex type that controls whether access logs are written for the distribution.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/LoggingConfig
|
|
type LoggingConfig struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// The Amazon S3 bucket to store the access logs in, for example, myawslogbucket.s3.amazonaws.com.
|
|
//
|
|
// Bucket is a required field
|
|
Bucket *string `type:"string" required:"true"`
|
|
|
|
// Specifies whether you want CloudFront to save access logs to an Amazon S3
|
|
// bucket. If you don't want to enable logging when you create a distribution
|
|
// or if you want to disable logging for an existing distribution, specify false
|
|
// for Enabled, and specify empty Bucket and Prefix elements. If you specify
|
|
// false for Enabled but you specify values for Bucket, prefix, and IncludeCookies,
|
|
// the values are automatically deleted.
|
|
//
|
|
// Enabled is a required field
|
|
Enabled *bool `type:"boolean" required:"true"`
|
|
|
|
// Specifies whether you want CloudFront to include cookies in access logs,
|
|
// specify true for IncludeCookies. If you choose to include cookies in logs,
|
|
// CloudFront logs all cookies regardless of how you configure the cache behaviors
|
|
// for this distribution. If you don't want to include cookies when you create
|
|
// a distribution or if you want to disable include cookies for an existing
|
|
// distribution, specify false for IncludeCookies.
|
|
//
|
|
// IncludeCookies is a required field
|
|
IncludeCookies *bool `type:"boolean" required:"true"`
|
|
|
|
// An optional string that you want CloudFront to prefix to the access log filenames
|
|
// for this distribution, for example, myprefix/. If you want to enable logging,
|
|
// but you don't want to specify a prefix, you still must include an empty Prefix
|
|
// element in the Logging element.
|
|
//
|
|
// Prefix is a required field
|
|
Prefix *string `type:"string" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s LoggingConfig) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s LoggingConfig) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *LoggingConfig) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "LoggingConfig"}
|
|
if s.Bucket == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Bucket"))
|
|
}
|
|
if s.Enabled == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Enabled"))
|
|
}
|
|
if s.IncludeCookies == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("IncludeCookies"))
|
|
}
|
|
if s.Prefix == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Prefix"))
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetBucket sets the Bucket field's value.
|
|
func (s *LoggingConfig) SetBucket(v string) *LoggingConfig {
|
|
s.Bucket = &v
|
|
return s
|
|
}
|
|
|
|
// SetEnabled sets the Enabled field's value.
|
|
func (s *LoggingConfig) SetEnabled(v bool) *LoggingConfig {
|
|
s.Enabled = &v
|
|
return s
|
|
}
|
|
|
|
// SetIncludeCookies sets the IncludeCookies field's value.
|
|
func (s *LoggingConfig) SetIncludeCookies(v bool) *LoggingConfig {
|
|
s.IncludeCookies = &v
|
|
return s
|
|
}
|
|
|
|
// SetPrefix sets the Prefix field's value.
|
|
func (s *LoggingConfig) SetPrefix(v string) *LoggingConfig {
|
|
s.Prefix = &v
|
|
return s
|
|
}
|
|
|
|
// A complex type that describes the Amazon S3 bucket or the HTTP server (for
|
|
// example, a web server) from which CloudFront gets your files. You must create
|
|
// at least one origin.
|
|
//
|
|
// For the current limit on the number of origins that you can create for a
|
|
// distribution, see Amazon CloudFront Limits (http://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html#limits_cloudfront)
|
|
// in the AWS General Reference.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/Origin
|
|
type Origin struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// A complex type that contains names and values for the custom headers that
|
|
// you want.
|
|
CustomHeaders *CustomHeaders `type:"structure"`
|
|
|
|
// A complex type that contains information about a custom origin. If the origin
|
|
// is an Amazon S3 bucket, use the S3OriginConfig element instead.
|
|
CustomOriginConfig *CustomOriginConfig `type:"structure"`
|
|
|
|
// Amazon S3 origins: The DNS name of the Amazon S3 bucket from which you want
|
|
// CloudFront to get objects for this origin, for example, myawsbucket.s3.amazonaws.com.
|
|
//
|
|
// Constraints for Amazon S3 origins:
|
|
//
|
|
// * If you configured Amazon S3 Transfer Acceleration for your bucket, don't
|
|
// specify the s3-accelerate endpoint for DomainName.
|
|
//
|
|
// * The bucket name must be between 3 and 63 characters long (inclusive).
|
|
//
|
|
// * The bucket name must contain only lowercase characters, numbers, periods,
|
|
// underscores, and dashes.
|
|
//
|
|
// * The bucket name must not contain adjacent periods.
|
|
//
|
|
// Custom Origins: The DNS domain name for the HTTP server from which you want
|
|
// CloudFront to get objects for this origin, for example, www.example.com.
|
|
//
|
|
// Constraints for custom origins:
|
|
//
|
|
// * DomainName must be a valid DNS name that contains only a-z, A-Z, 0-9,
|
|
// dot (.), hyphen (-), or underscore (_) characters.
|
|
//
|
|
// * The name cannot exceed 128 characters.
|
|
//
|
|
// DomainName is a required field
|
|
DomainName *string `type:"string" required:"true"`
|
|
|
|
// A unique identifier for the origin. The value of Id must be unique within
|
|
// the distribution.
|
|
//
|
|
// When you specify the value of TargetOriginId for the default cache behavior
|
|
// or for another cache behavior, you indicate the origin to which you want
|
|
// the cache behavior to route requests by specifying the value of the Id element
|
|
// for that origin. When a request matches the path pattern for that cache behavior,
|
|
// CloudFront routes the request to the specified origin. For more information,
|
|
// see Cache Behavior Settings (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValuesCacheBehavior)
|
|
// in the Amazon CloudFront Developer Guide.
|
|
//
|
|
// Id is a required field
|
|
Id *string `type:"string" required:"true"`
|
|
|
|
// An optional element that causes CloudFront to request your content from a
|
|
// directory in your Amazon S3 bucket or your custom origin. When you include
|
|
// the OriginPath element, specify the directory name, beginning with a /. CloudFront
|
|
// appends the directory name to the value of DomainName, for example, example.com/production.
|
|
// Do not include a / at the end of the directory name.
|
|
//
|
|
// For example, suppose you've specified the following values for your distribution:
|
|
//
|
|
// * DomainName: An Amazon S3 bucket named myawsbucket.
|
|
//
|
|
// * OriginPath: /production
|
|
//
|
|
// * CNAME: example.com
|
|
//
|
|
// When a user enters example.com/index.html in a browser, CloudFront sends
|
|
// a request to Amazon S3 for myawsbucket/production/index.html.
|
|
//
|
|
// When a user enters example.com/acme/index.html in a browser, CloudFront sends
|
|
// a request to Amazon S3 for myawsbucket/production/acme/index.html.
|
|
OriginPath *string `type:"string"`
|
|
|
|
// A complex type that contains information about the Amazon S3 origin. If the
|
|
// origin is a custom origin, use the CustomOriginConfig element instead.
|
|
S3OriginConfig *S3OriginConfig `type:"structure"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s Origin) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s Origin) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *Origin) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "Origin"}
|
|
if s.DomainName == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("DomainName"))
|
|
}
|
|
if s.Id == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Id"))
|
|
}
|
|
if s.CustomHeaders != nil {
|
|
if err := s.CustomHeaders.Validate(); err != nil {
|
|
invalidParams.AddNested("CustomHeaders", err.(request.ErrInvalidParams))
|
|
}
|
|
}
|
|
if s.CustomOriginConfig != nil {
|
|
if err := s.CustomOriginConfig.Validate(); err != nil {
|
|
invalidParams.AddNested("CustomOriginConfig", err.(request.ErrInvalidParams))
|
|
}
|
|
}
|
|
if s.S3OriginConfig != nil {
|
|
if err := s.S3OriginConfig.Validate(); err != nil {
|
|
invalidParams.AddNested("S3OriginConfig", err.(request.ErrInvalidParams))
|
|
}
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetCustomHeaders sets the CustomHeaders field's value.
|
|
func (s *Origin) SetCustomHeaders(v *CustomHeaders) *Origin {
|
|
s.CustomHeaders = v
|
|
return s
|
|
}
|
|
|
|
// SetCustomOriginConfig sets the CustomOriginConfig field's value.
|
|
func (s *Origin) SetCustomOriginConfig(v *CustomOriginConfig) *Origin {
|
|
s.CustomOriginConfig = v
|
|
return s
|
|
}
|
|
|
|
// SetDomainName sets the DomainName field's value.
|
|
func (s *Origin) SetDomainName(v string) *Origin {
|
|
s.DomainName = &v
|
|
return s
|
|
}
|
|
|
|
// SetId sets the Id field's value.
|
|
func (s *Origin) SetId(v string) *Origin {
|
|
s.Id = &v
|
|
return s
|
|
}
|
|
|
|
// SetOriginPath sets the OriginPath field's value.
|
|
func (s *Origin) SetOriginPath(v string) *Origin {
|
|
s.OriginPath = &v
|
|
return s
|
|
}
|
|
|
|
// SetS3OriginConfig sets the S3OriginConfig field's value.
|
|
func (s *Origin) SetS3OriginConfig(v *S3OriginConfig) *Origin {
|
|
s.S3OriginConfig = v
|
|
return s
|
|
}
|
|
|
|
// CloudFront origin access identity.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/CloudFrontOriginAccessIdentity
|
|
type OriginAccessIdentity struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// The current configuration information for the identity.
|
|
CloudFrontOriginAccessIdentityConfig *OriginAccessIdentityConfig `type:"structure"`
|
|
|
|
// The ID for the origin access identity, for example, E74FTE3AJFJ256A.
|
|
//
|
|
// Id is a required field
|
|
Id *string `type:"string" required:"true"`
|
|
|
|
// The Amazon S3 canonical user ID for the origin access identity, used when
|
|
// giving the origin access identity read permission to an object in Amazon
|
|
// S3.
|
|
//
|
|
// S3CanonicalUserId is a required field
|
|
S3CanonicalUserId *string `type:"string" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s OriginAccessIdentity) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s OriginAccessIdentity) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// SetCloudFrontOriginAccessIdentityConfig sets the CloudFrontOriginAccessIdentityConfig field's value.
|
|
func (s *OriginAccessIdentity) SetCloudFrontOriginAccessIdentityConfig(v *OriginAccessIdentityConfig) *OriginAccessIdentity {
|
|
s.CloudFrontOriginAccessIdentityConfig = v
|
|
return s
|
|
}
|
|
|
|
// SetId sets the Id field's value.
|
|
func (s *OriginAccessIdentity) SetId(v string) *OriginAccessIdentity {
|
|
s.Id = &v
|
|
return s
|
|
}
|
|
|
|
// SetS3CanonicalUserId sets the S3CanonicalUserId field's value.
|
|
func (s *OriginAccessIdentity) SetS3CanonicalUserId(v string) *OriginAccessIdentity {
|
|
s.S3CanonicalUserId = &v
|
|
return s
|
|
}
|
|
|
|
// Origin access identity configuration. Send a GET request to the /CloudFront
|
|
// API version/CloudFront/identity ID/config resource.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/CloudFrontOriginAccessIdentityConfig
|
|
type OriginAccessIdentityConfig struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// A unique number that ensures the request can't be replayed.
|
|
//
|
|
// If the CallerReference is new (no matter the content of the CloudFrontOriginAccessIdentityConfig
|
|
// object), a new origin access identity is created.
|
|
//
|
|
// If the CallerReference is a value already sent in a previous identity request,
|
|
// and the content of the CloudFrontOriginAccessIdentityConfig is identical
|
|
// to the original request (ignoring white space), the response includes the
|
|
// same information returned to the original request.
|
|
//
|
|
// If the CallerReference is a value you already sent in a previous request
|
|
// to create an identity, but the content of the CloudFrontOriginAccessIdentityConfig
|
|
// is different from the original request, CloudFront returns a CloudFrontOriginAccessIdentityAlreadyExists
|
|
// error.
|
|
//
|
|
// CallerReference is a required field
|
|
CallerReference *string `type:"string" required:"true"`
|
|
|
|
// Any comments you want to include about the origin access identity.
|
|
//
|
|
// Comment is a required field
|
|
Comment *string `type:"string" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s OriginAccessIdentityConfig) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s OriginAccessIdentityConfig) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *OriginAccessIdentityConfig) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "OriginAccessIdentityConfig"}
|
|
if s.CallerReference == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("CallerReference"))
|
|
}
|
|
if s.Comment == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Comment"))
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetCallerReference sets the CallerReference field's value.
|
|
func (s *OriginAccessIdentityConfig) SetCallerReference(v string) *OriginAccessIdentityConfig {
|
|
s.CallerReference = &v
|
|
return s
|
|
}
|
|
|
|
// SetComment sets the Comment field's value.
|
|
func (s *OriginAccessIdentityConfig) SetComment(v string) *OriginAccessIdentityConfig {
|
|
s.Comment = &v
|
|
return s
|
|
}
|
|
|
|
// Lists the origin access identities for CloudFront.Send a GET request to the
|
|
// /CloudFront API version/origin-access-identity/cloudfront resource. The response
|
|
// includes a CloudFrontOriginAccessIdentityList element with zero or more CloudFrontOriginAccessIdentitySummary
|
|
// child elements. By default, your entire list of origin access identities
|
|
// is returned in one single page. If the list is long, you can paginate it
|
|
// using the MaxItems and Marker parameters.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/CloudFrontOriginAccessIdentityList
|
|
type OriginAccessIdentityList struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// A flag that indicates whether more origin access identities remain to be
|
|
// listed. If your results were truncated, you can make a follow-up pagination
|
|
// request using the Marker request parameter to retrieve more items in the
|
|
// list.
|
|
//
|
|
// IsTruncated is a required field
|
|
IsTruncated *bool `type:"boolean" required:"true"`
|
|
|
|
// A complex type that contains one CloudFrontOriginAccessIdentitySummary element
|
|
// for each origin access identity that was created by the current AWS account.
|
|
Items []*OriginAccessIdentitySummary `locationNameList:"CloudFrontOriginAccessIdentitySummary" type:"list"`
|
|
|
|
// Use this when paginating results to indicate where to begin in your list
|
|
// of origin access identities. The results include identities in the list that
|
|
// occur after the marker. To get the next page of results, set the Marker to
|
|
// the value of the NextMarker from the current page's response (which is also
|
|
// the ID of the last identity on that page).
|
|
//
|
|
// Marker is a required field
|
|
Marker *string `type:"string" required:"true"`
|
|
|
|
// The maximum number of origin access identities you want in the response body.
|
|
//
|
|
// MaxItems is a required field
|
|
MaxItems *int64 `type:"integer" required:"true"`
|
|
|
|
// If IsTruncated is true, this element is present and contains the value you
|
|
// can use for the Marker request parameter to continue listing your origin
|
|
// access identities where they left off.
|
|
NextMarker *string `type:"string"`
|
|
|
|
// The number of CloudFront origin access identities that were created by the
|
|
// current AWS account.
|
|
//
|
|
// Quantity is a required field
|
|
Quantity *int64 `type:"integer" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s OriginAccessIdentityList) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s OriginAccessIdentityList) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// SetIsTruncated sets the IsTruncated field's value.
|
|
func (s *OriginAccessIdentityList) SetIsTruncated(v bool) *OriginAccessIdentityList {
|
|
s.IsTruncated = &v
|
|
return s
|
|
}
|
|
|
|
// SetItems sets the Items field's value.
|
|
func (s *OriginAccessIdentityList) SetItems(v []*OriginAccessIdentitySummary) *OriginAccessIdentityList {
|
|
s.Items = v
|
|
return s
|
|
}
|
|
|
|
// SetMarker sets the Marker field's value.
|
|
func (s *OriginAccessIdentityList) SetMarker(v string) *OriginAccessIdentityList {
|
|
s.Marker = &v
|
|
return s
|
|
}
|
|
|
|
// SetMaxItems sets the MaxItems field's value.
|
|
func (s *OriginAccessIdentityList) SetMaxItems(v int64) *OriginAccessIdentityList {
|
|
s.MaxItems = &v
|
|
return s
|
|
}
|
|
|
|
// SetNextMarker sets the NextMarker field's value.
|
|
func (s *OriginAccessIdentityList) SetNextMarker(v string) *OriginAccessIdentityList {
|
|
s.NextMarker = &v
|
|
return s
|
|
}
|
|
|
|
// SetQuantity sets the Quantity field's value.
|
|
func (s *OriginAccessIdentityList) SetQuantity(v int64) *OriginAccessIdentityList {
|
|
s.Quantity = &v
|
|
return s
|
|
}
|
|
|
|
// Summary of the information about a CloudFront origin access identity.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/CloudFrontOriginAccessIdentitySummary
|
|
type OriginAccessIdentitySummary struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// The comment for this origin access identity, as originally specified when
|
|
// created.
|
|
//
|
|
// Comment is a required field
|
|
Comment *string `type:"string" required:"true"`
|
|
|
|
// The ID for the origin access identity. For example: E74FTE3AJFJ256A.
|
|
//
|
|
// Id is a required field
|
|
Id *string `type:"string" required:"true"`
|
|
|
|
// The Amazon S3 canonical user ID for the origin access identity, which you
|
|
// use when giving the origin access identity read permission to an object in
|
|
// Amazon S3.
|
|
//
|
|
// S3CanonicalUserId is a required field
|
|
S3CanonicalUserId *string `type:"string" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s OriginAccessIdentitySummary) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s OriginAccessIdentitySummary) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// SetComment sets the Comment field's value.
|
|
func (s *OriginAccessIdentitySummary) SetComment(v string) *OriginAccessIdentitySummary {
|
|
s.Comment = &v
|
|
return s
|
|
}
|
|
|
|
// SetId sets the Id field's value.
|
|
func (s *OriginAccessIdentitySummary) SetId(v string) *OriginAccessIdentitySummary {
|
|
s.Id = &v
|
|
return s
|
|
}
|
|
|
|
// SetS3CanonicalUserId sets the S3CanonicalUserId field's value.
|
|
func (s *OriginAccessIdentitySummary) SetS3CanonicalUserId(v string) *OriginAccessIdentitySummary {
|
|
s.S3CanonicalUserId = &v
|
|
return s
|
|
}
|
|
|
|
// A complex type that contains HeaderName and HeaderValue elements, if any,
|
|
// for this distribution.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/OriginCustomHeader
|
|
type OriginCustomHeader struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// The name of a header that you want CloudFront to forward to your origin.
|
|
// For more information, see Forwarding Custom Headers to Your Origin (Web Distributions
|
|
// Only) (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/forward-custom-headers.html)
|
|
// in the Amazon Amazon CloudFront Developer Guide.
|
|
//
|
|
// HeaderName is a required field
|
|
HeaderName *string `type:"string" required:"true"`
|
|
|
|
// The value for the header that you specified in the HeaderName field.
|
|
//
|
|
// HeaderValue is a required field
|
|
HeaderValue *string `type:"string" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s OriginCustomHeader) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s OriginCustomHeader) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *OriginCustomHeader) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "OriginCustomHeader"}
|
|
if s.HeaderName == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("HeaderName"))
|
|
}
|
|
if s.HeaderValue == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("HeaderValue"))
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetHeaderName sets the HeaderName field's value.
|
|
func (s *OriginCustomHeader) SetHeaderName(v string) *OriginCustomHeader {
|
|
s.HeaderName = &v
|
|
return s
|
|
}
|
|
|
|
// SetHeaderValue sets the HeaderValue field's value.
|
|
func (s *OriginCustomHeader) SetHeaderValue(v string) *OriginCustomHeader {
|
|
s.HeaderValue = &v
|
|
return s
|
|
}
|
|
|
|
// A complex type that contains information about the SSL/TLS protocols that
|
|
// CloudFront can use when establishing an HTTPS connection with your origin.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/OriginSslProtocols
|
|
type OriginSslProtocols struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// A list that contains allowed SSL/TLS protocols for this distribution.
|
|
//
|
|
// Items is a required field
|
|
Items []*string `locationNameList:"SslProtocol" type:"list" required:"true"`
|
|
|
|
// The number of SSL/TLS protocols that you want to allow CloudFront to use
|
|
// when establishing an HTTPS connection with this origin.
|
|
//
|
|
// Quantity is a required field
|
|
Quantity *int64 `type:"integer" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s OriginSslProtocols) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s OriginSslProtocols) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *OriginSslProtocols) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "OriginSslProtocols"}
|
|
if s.Items == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Items"))
|
|
}
|
|
if s.Quantity == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Quantity"))
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetItems sets the Items field's value.
|
|
func (s *OriginSslProtocols) SetItems(v []*string) *OriginSslProtocols {
|
|
s.Items = v
|
|
return s
|
|
}
|
|
|
|
// SetQuantity sets the Quantity field's value.
|
|
func (s *OriginSslProtocols) SetQuantity(v int64) *OriginSslProtocols {
|
|
s.Quantity = &v
|
|
return s
|
|
}
|
|
|
|
// A complex type that contains information about origins for this distribution.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/Origins
|
|
type Origins struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// A complex type that contains origins for this distribution.
|
|
Items []*Origin `locationNameList:"Origin" min:"1" type:"list"`
|
|
|
|
// The number of origins for this distribution.
|
|
//
|
|
// Quantity is a required field
|
|
Quantity *int64 `type:"integer" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s Origins) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s Origins) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *Origins) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "Origins"}
|
|
if s.Items != nil && len(s.Items) < 1 {
|
|
invalidParams.Add(request.NewErrParamMinLen("Items", 1))
|
|
}
|
|
if s.Quantity == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Quantity"))
|
|
}
|
|
if s.Items != nil {
|
|
for i, v := range s.Items {
|
|
if v == nil {
|
|
continue
|
|
}
|
|
if err := v.Validate(); err != nil {
|
|
invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Items", i), err.(request.ErrInvalidParams))
|
|
}
|
|
}
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetItems sets the Items field's value.
|
|
func (s *Origins) SetItems(v []*Origin) *Origins {
|
|
s.Items = v
|
|
return s
|
|
}
|
|
|
|
// SetQuantity sets the Quantity field's value.
|
|
func (s *Origins) SetQuantity(v int64) *Origins {
|
|
s.Quantity = &v
|
|
return s
|
|
}
|
|
|
|
// A complex type that contains information about the objects that you want
|
|
// to invalidate. For more information, see Specifying the Objects to Invalidate
|
|
// (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Invalidation.html#invalidation-specifying-objects)
|
|
// in the Amazon CloudFront Developer Guide.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/Paths
|
|
type Paths struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// A complex type that contains a list of the paths that you want to invalidate.
|
|
Items []*string `locationNameList:"Path" type:"list"`
|
|
|
|
// The number of objects that you want to invalidate.
|
|
//
|
|
// Quantity is a required field
|
|
Quantity *int64 `type:"integer" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s Paths) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s Paths) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *Paths) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "Paths"}
|
|
if s.Quantity == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Quantity"))
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetItems sets the Items field's value.
|
|
func (s *Paths) SetItems(v []*string) *Paths {
|
|
s.Items = v
|
|
return s
|
|
}
|
|
|
|
// SetQuantity sets the Quantity field's value.
|
|
func (s *Paths) SetQuantity(v int64) *Paths {
|
|
s.Quantity = &v
|
|
return s
|
|
}
|
|
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/QueryStringCacheKeys
|
|
type QueryStringCacheKeys struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// (Optional) A list that contains the query string parameters that you want
|
|
// CloudFront to use as a basis for caching for this cache behavior. If Quantity
|
|
// is 0, you can omit Items.
|
|
Items []*string `locationNameList:"Name" type:"list"`
|
|
|
|
// The number of whitelisted query string parameters for this cache behavior.
|
|
//
|
|
// Quantity is a required field
|
|
Quantity *int64 `type:"integer" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s QueryStringCacheKeys) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s QueryStringCacheKeys) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *QueryStringCacheKeys) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "QueryStringCacheKeys"}
|
|
if s.Quantity == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Quantity"))
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetItems sets the Items field's value.
|
|
func (s *QueryStringCacheKeys) SetItems(v []*string) *QueryStringCacheKeys {
|
|
s.Items = v
|
|
return s
|
|
}
|
|
|
|
// SetQuantity sets the Quantity field's value.
|
|
func (s *QueryStringCacheKeys) SetQuantity(v int64) *QueryStringCacheKeys {
|
|
s.Quantity = &v
|
|
return s
|
|
}
|
|
|
|
// A complex type that identifies ways in which you want to restrict distribution
|
|
// of your content.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/Restrictions
|
|
type Restrictions struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// A complex type that controls the countries in which your content is distributed.
|
|
// CloudFront determines the location of your users using MaxMind GeoIP databases.
|
|
//
|
|
// GeoRestriction is a required field
|
|
GeoRestriction *GeoRestriction `type:"structure" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s Restrictions) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s Restrictions) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *Restrictions) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "Restrictions"}
|
|
if s.GeoRestriction == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("GeoRestriction"))
|
|
}
|
|
if s.GeoRestriction != nil {
|
|
if err := s.GeoRestriction.Validate(); err != nil {
|
|
invalidParams.AddNested("GeoRestriction", err.(request.ErrInvalidParams))
|
|
}
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetGeoRestriction sets the GeoRestriction field's value.
|
|
func (s *Restrictions) SetGeoRestriction(v *GeoRestriction) *Restrictions {
|
|
s.GeoRestriction = v
|
|
return s
|
|
}
|
|
|
|
// A complex type that contains information about the Amazon S3 bucket from
|
|
// which you want CloudFront to get your media files for distribution.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/S3Origin
|
|
type S3Origin struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// The DNS name of the Amazon S3 origin.
|
|
//
|
|
// DomainName is a required field
|
|
DomainName *string `type:"string" required:"true"`
|
|
|
|
// The CloudFront origin access identity to associate with the RTMP distribution.
|
|
// Use an origin access identity to configure the distribution so that end users
|
|
// can only access objects in an Amazon S3 bucket through CloudFront.
|
|
//
|
|
// If you want end users to be able to access objects using either the CloudFront
|
|
// URL or the Amazon S3 URL, specify an empty OriginAccessIdentity element.
|
|
//
|
|
// To delete the origin access identity from an existing distribution, update
|
|
// the distribution configuration and include an empty OriginAccessIdentity
|
|
// element.
|
|
//
|
|
// To replace the origin access identity, update the distribution configuration
|
|
// and specify the new origin access identity.
|
|
//
|
|
// For more information, see Using an Origin Access Identity to Restrict Access
|
|
// to Your Amazon S3 Content (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-restricting-access-to-s3.html)
|
|
// in the Amazon Amazon CloudFront Developer Guide.
|
|
//
|
|
// OriginAccessIdentity is a required field
|
|
OriginAccessIdentity *string `type:"string" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s S3Origin) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s S3Origin) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *S3Origin) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "S3Origin"}
|
|
if s.DomainName == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("DomainName"))
|
|
}
|
|
if s.OriginAccessIdentity == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("OriginAccessIdentity"))
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetDomainName sets the DomainName field's value.
|
|
func (s *S3Origin) SetDomainName(v string) *S3Origin {
|
|
s.DomainName = &v
|
|
return s
|
|
}
|
|
|
|
// SetOriginAccessIdentity sets the OriginAccessIdentity field's value.
|
|
func (s *S3Origin) SetOriginAccessIdentity(v string) *S3Origin {
|
|
s.OriginAccessIdentity = &v
|
|
return s
|
|
}
|
|
|
|
// A complex type that contains information about the Amazon S3 origin. If the
|
|
// origin is a custom origin, use the CustomOriginConfig element instead.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/S3OriginConfig
|
|
type S3OriginConfig struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// The CloudFront origin access identity to associate with the origin. Use an
|
|
// origin access identity to configure the origin so that viewers can only access
|
|
// objects in an Amazon S3 bucket through CloudFront. The format of the value
|
|
// is:
|
|
//
|
|
// origin-access-identity/cloudfront/ID-of-origin-access-identity
|
|
//
|
|
// where ID-of-origin-access-identity is the value that CloudFront returned
|
|
// in the ID element when you created the origin access identity.
|
|
//
|
|
// If you want viewers to be able to access objects using either the CloudFront
|
|
// URL or the Amazon S3 URL, specify an empty OriginAccessIdentity element.
|
|
//
|
|
// To delete the origin access identity from an existing distribution, update
|
|
// the distribution configuration and include an empty OriginAccessIdentity
|
|
// element.
|
|
//
|
|
// To replace the origin access identity, update the distribution configuration
|
|
// and specify the new origin access identity.
|
|
//
|
|
// For more information about the origin access identity, see Serving Private
|
|
// Content through CloudFront (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html)
|
|
// in the Amazon CloudFront Developer Guide.
|
|
//
|
|
// OriginAccessIdentity is a required field
|
|
OriginAccessIdentity *string `type:"string" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s S3OriginConfig) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s S3OriginConfig) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *S3OriginConfig) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "S3OriginConfig"}
|
|
if s.OriginAccessIdentity == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("OriginAccessIdentity"))
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetOriginAccessIdentity sets the OriginAccessIdentity field's value.
|
|
func (s *S3OriginConfig) SetOriginAccessIdentity(v string) *S3OriginConfig {
|
|
s.OriginAccessIdentity = &v
|
|
return s
|
|
}
|
|
|
|
// A complex type that lists the AWS accounts that were included in the TrustedSigners
|
|
// complex type, as well as their active CloudFront key pair IDs, if any.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/Signer
|
|
type Signer struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// An AWS account that is included in the TrustedSigners complex type for this
|
|
// RTMP distribution. Valid values include:
|
|
//
|
|
// * self, which is the AWS account used to create the distribution.
|
|
//
|
|
// * An AWS account number.
|
|
AwsAccountNumber *string `type:"string"`
|
|
|
|
// A complex type that lists the active CloudFront key pairs, if any, that are
|
|
// associated with AwsAccountNumber.
|
|
KeyPairIds *KeyPairIds `type:"structure"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s Signer) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s Signer) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// SetAwsAccountNumber sets the AwsAccountNumber field's value.
|
|
func (s *Signer) SetAwsAccountNumber(v string) *Signer {
|
|
s.AwsAccountNumber = &v
|
|
return s
|
|
}
|
|
|
|
// SetKeyPairIds sets the KeyPairIds field's value.
|
|
func (s *Signer) SetKeyPairIds(v *KeyPairIds) *Signer {
|
|
s.KeyPairIds = v
|
|
return s
|
|
}
|
|
|
|
// A streaming distribution.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/StreamingDistribution
|
|
type StreamingDistribution struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// ARN is a required field
|
|
ARN *string `type:"string" required:"true"`
|
|
|
|
// A complex type that lists the AWS accounts, if any, that you included in
|
|
// the TrustedSigners complex type for this distribution. These are the accounts
|
|
// that you want to allow to create signed URLs for private content.
|
|
//
|
|
// The Signer complex type lists the AWS account number of the trusted signer
|
|
// or self if the signer is the AWS account that created the distribution. The
|
|
// Signer element also includes the IDs of any active CloudFront key pairs that
|
|
// are associated with the trusted signer's AWS account. If no KeyPairId element
|
|
// appears for a Signer, that signer can't create signed URLs.
|
|
//
|
|
// For more information, see Serving Private Content through CloudFront (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html)
|
|
// in the Amazon CloudFront Developer Guide.
|
|
//
|
|
// ActiveTrustedSigners is a required field
|
|
ActiveTrustedSigners *ActiveTrustedSigners `type:"structure" required:"true"`
|
|
|
|
// The domain name that corresponds to the streaming distribution, for example,
|
|
// s5c39gqb8ow64r.cloudfront.net.
|
|
//
|
|
// DomainName is a required field
|
|
DomainName *string `type:"string" required:"true"`
|
|
|
|
// The identifier for the RTMP distribution. For example: EGTXBD79EXAMPLE.
|
|
//
|
|
// Id is a required field
|
|
Id *string `type:"string" required:"true"`
|
|
|
|
// The date and time that the distribution was last modified.
|
|
LastModifiedTime *time.Time `type:"timestamp" timestampFormat:"iso8601"`
|
|
|
|
// The current status of the RTMP distribution. When the status is Deployed,
|
|
// the distribution's information is propagated to all CloudFront edge locations.
|
|
//
|
|
// Status is a required field
|
|
Status *string `type:"string" required:"true"`
|
|
|
|
// The current configuration information for the RTMP distribution.
|
|
//
|
|
// StreamingDistributionConfig is a required field
|
|
StreamingDistributionConfig *StreamingDistributionConfig `type:"structure" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s StreamingDistribution) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s StreamingDistribution) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// SetARN sets the ARN field's value.
|
|
func (s *StreamingDistribution) SetARN(v string) *StreamingDistribution {
|
|
s.ARN = &v
|
|
return s
|
|
}
|
|
|
|
// SetActiveTrustedSigners sets the ActiveTrustedSigners field's value.
|
|
func (s *StreamingDistribution) SetActiveTrustedSigners(v *ActiveTrustedSigners) *StreamingDistribution {
|
|
s.ActiveTrustedSigners = v
|
|
return s
|
|
}
|
|
|
|
// SetDomainName sets the DomainName field's value.
|
|
func (s *StreamingDistribution) SetDomainName(v string) *StreamingDistribution {
|
|
s.DomainName = &v
|
|
return s
|
|
}
|
|
|
|
// SetId sets the Id field's value.
|
|
func (s *StreamingDistribution) SetId(v string) *StreamingDistribution {
|
|
s.Id = &v
|
|
return s
|
|
}
|
|
|
|
// SetLastModifiedTime sets the LastModifiedTime field's value.
|
|
func (s *StreamingDistribution) SetLastModifiedTime(v time.Time) *StreamingDistribution {
|
|
s.LastModifiedTime = &v
|
|
return s
|
|
}
|
|
|
|
// SetStatus sets the Status field's value.
|
|
func (s *StreamingDistribution) SetStatus(v string) *StreamingDistribution {
|
|
s.Status = &v
|
|
return s
|
|
}
|
|
|
|
// SetStreamingDistributionConfig sets the StreamingDistributionConfig field's value.
|
|
func (s *StreamingDistribution) SetStreamingDistributionConfig(v *StreamingDistributionConfig) *StreamingDistribution {
|
|
s.StreamingDistributionConfig = v
|
|
return s
|
|
}
|
|
|
|
// The RTMP distribution's configuration information.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/StreamingDistributionConfig
|
|
type StreamingDistributionConfig struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// A complex type that contains information about CNAMEs (alternate domain names),
|
|
// if any, for this streaming distribution.
|
|
Aliases *Aliases `type:"structure"`
|
|
|
|
// A unique number that ensures that the request can't be replayed. If the CallerReference
|
|
// is new (no matter the content of the StreamingDistributionConfig object),
|
|
// a new streaming distribution is created. If the CallerReference is a value
|
|
// that you already sent in a previous request to create a streaming distribution,
|
|
// and the content of the StreamingDistributionConfig is identical to the original
|
|
// request (ignoring white space), the response includes the same information
|
|
// returned to the original request. If the CallerReference is a value that
|
|
// you already sent in a previous request to create a streaming distribution
|
|
// but the content of the StreamingDistributionConfig is different from the
|
|
// original request, CloudFront returns a DistributionAlreadyExists error.
|
|
//
|
|
// CallerReference is a required field
|
|
CallerReference *string `type:"string" required:"true"`
|
|
|
|
// Any comments you want to include about the streaming distribution.
|
|
//
|
|
// Comment is a required field
|
|
Comment *string `type:"string" required:"true"`
|
|
|
|
// Whether the streaming distribution is enabled to accept user requests for
|
|
// content.
|
|
//
|
|
// Enabled is a required field
|
|
Enabled *bool `type:"boolean" required:"true"`
|
|
|
|
// A complex type that controls whether access logs are written for the streaming
|
|
// distribution.
|
|
Logging *StreamingLoggingConfig `type:"structure"`
|
|
|
|
// A complex type that contains information about price class for this streaming
|
|
// distribution.
|
|
PriceClass *string `type:"string" enum:"PriceClass"`
|
|
|
|
// A complex type that contains information about the Amazon S3 bucket from
|
|
// which you want CloudFront to get your media files for distribution.
|
|
//
|
|
// S3Origin is a required field
|
|
S3Origin *S3Origin `type:"structure" required:"true"`
|
|
|
|
// A complex type that specifies any AWS accounts that you want to permit to
|
|
// create signed URLs for private content. If you want the distribution to use
|
|
// signed URLs, include this element; if you want the distribution to use public
|
|
// URLs, remove this element. For more information, see Serving Private Content
|
|
// through CloudFront (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html)
|
|
// in the Amazon CloudFront Developer Guide.
|
|
//
|
|
// TrustedSigners is a required field
|
|
TrustedSigners *TrustedSigners `type:"structure" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s StreamingDistributionConfig) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s StreamingDistributionConfig) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *StreamingDistributionConfig) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "StreamingDistributionConfig"}
|
|
if s.CallerReference == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("CallerReference"))
|
|
}
|
|
if s.Comment == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Comment"))
|
|
}
|
|
if s.Enabled == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Enabled"))
|
|
}
|
|
if s.S3Origin == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("S3Origin"))
|
|
}
|
|
if s.TrustedSigners == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("TrustedSigners"))
|
|
}
|
|
if s.Aliases != nil {
|
|
if err := s.Aliases.Validate(); err != nil {
|
|
invalidParams.AddNested("Aliases", err.(request.ErrInvalidParams))
|
|
}
|
|
}
|
|
if s.Logging != nil {
|
|
if err := s.Logging.Validate(); err != nil {
|
|
invalidParams.AddNested("Logging", err.(request.ErrInvalidParams))
|
|
}
|
|
}
|
|
if s.S3Origin != nil {
|
|
if err := s.S3Origin.Validate(); err != nil {
|
|
invalidParams.AddNested("S3Origin", err.(request.ErrInvalidParams))
|
|
}
|
|
}
|
|
if s.TrustedSigners != nil {
|
|
if err := s.TrustedSigners.Validate(); err != nil {
|
|
invalidParams.AddNested("TrustedSigners", err.(request.ErrInvalidParams))
|
|
}
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetAliases sets the Aliases field's value.
|
|
func (s *StreamingDistributionConfig) SetAliases(v *Aliases) *StreamingDistributionConfig {
|
|
s.Aliases = v
|
|
return s
|
|
}
|
|
|
|
// SetCallerReference sets the CallerReference field's value.
|
|
func (s *StreamingDistributionConfig) SetCallerReference(v string) *StreamingDistributionConfig {
|
|
s.CallerReference = &v
|
|
return s
|
|
}
|
|
|
|
// SetComment sets the Comment field's value.
|
|
func (s *StreamingDistributionConfig) SetComment(v string) *StreamingDistributionConfig {
|
|
s.Comment = &v
|
|
return s
|
|
}
|
|
|
|
// SetEnabled sets the Enabled field's value.
|
|
func (s *StreamingDistributionConfig) SetEnabled(v bool) *StreamingDistributionConfig {
|
|
s.Enabled = &v
|
|
return s
|
|
}
|
|
|
|
// SetLogging sets the Logging field's value.
|
|
func (s *StreamingDistributionConfig) SetLogging(v *StreamingLoggingConfig) *StreamingDistributionConfig {
|
|
s.Logging = v
|
|
return s
|
|
}
|
|
|
|
// SetPriceClass sets the PriceClass field's value.
|
|
func (s *StreamingDistributionConfig) SetPriceClass(v string) *StreamingDistributionConfig {
|
|
s.PriceClass = &v
|
|
return s
|
|
}
|
|
|
|
// SetS3Origin sets the S3Origin field's value.
|
|
func (s *StreamingDistributionConfig) SetS3Origin(v *S3Origin) *StreamingDistributionConfig {
|
|
s.S3Origin = v
|
|
return s
|
|
}
|
|
|
|
// SetTrustedSigners sets the TrustedSigners field's value.
|
|
func (s *StreamingDistributionConfig) SetTrustedSigners(v *TrustedSigners) *StreamingDistributionConfig {
|
|
s.TrustedSigners = v
|
|
return s
|
|
}
|
|
|
|
// A streaming distribution Configuration and a list of tags to be associated
|
|
// with the streaming distribution.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/StreamingDistributionConfigWithTags
|
|
type StreamingDistributionConfigWithTags struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// A streaming distribution Configuration.
|
|
//
|
|
// StreamingDistributionConfig is a required field
|
|
StreamingDistributionConfig *StreamingDistributionConfig `type:"structure" required:"true"`
|
|
|
|
// A complex type that contains zero or more Tag elements.
|
|
//
|
|
// Tags is a required field
|
|
Tags *Tags `type:"structure" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s StreamingDistributionConfigWithTags) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s StreamingDistributionConfigWithTags) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *StreamingDistributionConfigWithTags) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "StreamingDistributionConfigWithTags"}
|
|
if s.StreamingDistributionConfig == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("StreamingDistributionConfig"))
|
|
}
|
|
if s.Tags == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Tags"))
|
|
}
|
|
if s.StreamingDistributionConfig != nil {
|
|
if err := s.StreamingDistributionConfig.Validate(); err != nil {
|
|
invalidParams.AddNested("StreamingDistributionConfig", err.(request.ErrInvalidParams))
|
|
}
|
|
}
|
|
if s.Tags != nil {
|
|
if err := s.Tags.Validate(); err != nil {
|
|
invalidParams.AddNested("Tags", err.(request.ErrInvalidParams))
|
|
}
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetStreamingDistributionConfig sets the StreamingDistributionConfig field's value.
|
|
func (s *StreamingDistributionConfigWithTags) SetStreamingDistributionConfig(v *StreamingDistributionConfig) *StreamingDistributionConfigWithTags {
|
|
s.StreamingDistributionConfig = v
|
|
return s
|
|
}
|
|
|
|
// SetTags sets the Tags field's value.
|
|
func (s *StreamingDistributionConfigWithTags) SetTags(v *Tags) *StreamingDistributionConfigWithTags {
|
|
s.Tags = v
|
|
return s
|
|
}
|
|
|
|
// A streaming distribution list.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/StreamingDistributionList
|
|
type StreamingDistributionList struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// A flag that indicates whether more streaming distributions remain to be listed.
|
|
// If your results were truncated, you can make a follow-up pagination request
|
|
// using the Marker request parameter to retrieve more distributions in the
|
|
// list.
|
|
//
|
|
// IsTruncated is a required field
|
|
IsTruncated *bool `type:"boolean" required:"true"`
|
|
|
|
// A complex type that contains one StreamingDistributionSummary element for
|
|
// each distribution that was created by the current AWS account.
|
|
Items []*StreamingDistributionSummary `locationNameList:"StreamingDistributionSummary" type:"list"`
|
|
|
|
// The value you provided for the Marker request parameter.
|
|
//
|
|
// Marker is a required field
|
|
Marker *string `type:"string" required:"true"`
|
|
|
|
// The value you provided for the MaxItems request parameter.
|
|
//
|
|
// MaxItems is a required field
|
|
MaxItems *int64 `type:"integer" required:"true"`
|
|
|
|
// If IsTruncated is true, this element is present and contains the value you
|
|
// can use for the Marker request parameter to continue listing your RTMP distributions
|
|
// where they left off.
|
|
NextMarker *string `type:"string"`
|
|
|
|
// The number of streaming distributions that were created by the current AWS
|
|
// account.
|
|
//
|
|
// Quantity is a required field
|
|
Quantity *int64 `type:"integer" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s StreamingDistributionList) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s StreamingDistributionList) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// SetIsTruncated sets the IsTruncated field's value.
|
|
func (s *StreamingDistributionList) SetIsTruncated(v bool) *StreamingDistributionList {
|
|
s.IsTruncated = &v
|
|
return s
|
|
}
|
|
|
|
// SetItems sets the Items field's value.
|
|
func (s *StreamingDistributionList) SetItems(v []*StreamingDistributionSummary) *StreamingDistributionList {
|
|
s.Items = v
|
|
return s
|
|
}
|
|
|
|
// SetMarker sets the Marker field's value.
|
|
func (s *StreamingDistributionList) SetMarker(v string) *StreamingDistributionList {
|
|
s.Marker = &v
|
|
return s
|
|
}
|
|
|
|
// SetMaxItems sets the MaxItems field's value.
|
|
func (s *StreamingDistributionList) SetMaxItems(v int64) *StreamingDistributionList {
|
|
s.MaxItems = &v
|
|
return s
|
|
}
|
|
|
|
// SetNextMarker sets the NextMarker field's value.
|
|
func (s *StreamingDistributionList) SetNextMarker(v string) *StreamingDistributionList {
|
|
s.NextMarker = &v
|
|
return s
|
|
}
|
|
|
|
// SetQuantity sets the Quantity field's value.
|
|
func (s *StreamingDistributionList) SetQuantity(v int64) *StreamingDistributionList {
|
|
s.Quantity = &v
|
|
return s
|
|
}
|
|
|
|
// A summary of the information for an Amazon CloudFront streaming distribution.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/StreamingDistributionSummary
|
|
type StreamingDistributionSummary struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// The ARN (Amazon Resource Name) for the streaming distribution. For example:
|
|
// arn:aws:cloudfront::123456789012:streaming-distribution/EDFDVBD632BHDS5,
|
|
// where 123456789012 is your AWS account ID.
|
|
//
|
|
// ARN is a required field
|
|
ARN *string `type:"string" required:"true"`
|
|
|
|
// A complex type that contains information about CNAMEs (alternate domain names),
|
|
// if any, for this streaming distribution.
|
|
//
|
|
// Aliases is a required field
|
|
Aliases *Aliases `type:"structure" required:"true"`
|
|
|
|
// The comment originally specified when this distribution was created.
|
|
//
|
|
// Comment is a required field
|
|
Comment *string `type:"string" required:"true"`
|
|
|
|
// The domain name corresponding to the distribution, for example, d111111abcdef8.cloudfront.net.
|
|
//
|
|
// DomainName is a required field
|
|
DomainName *string `type:"string" required:"true"`
|
|
|
|
// Whether the distribution is enabled to accept end user requests for content.
|
|
//
|
|
// Enabled is a required field
|
|
Enabled *bool `type:"boolean" required:"true"`
|
|
|
|
// The identifier for the distribution, for example, EDFDVBD632BHDS5.
|
|
//
|
|
// Id is a required field
|
|
Id *string `type:"string" required:"true"`
|
|
|
|
// The date and time the distribution was last modified.
|
|
//
|
|
// LastModifiedTime is a required field
|
|
LastModifiedTime *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"`
|
|
|
|
// PriceClass is a required field
|
|
PriceClass *string `type:"string" required:"true" enum:"PriceClass"`
|
|
|
|
// A complex type that contains information about the Amazon S3 bucket from
|
|
// which you want CloudFront to get your media files for distribution.
|
|
//
|
|
// S3Origin is a required field
|
|
S3Origin *S3Origin `type:"structure" required:"true"`
|
|
|
|
// Indicates the current status of the distribution. When the status is Deployed,
|
|
// the distribution's information is fully propagated throughout the Amazon
|
|
// CloudFront system.
|
|
//
|
|
// Status is a required field
|
|
Status *string `type:"string" required:"true"`
|
|
|
|
// A complex type that specifies the AWS accounts, if any, that you want to
|
|
// allow to create signed URLs for private content. If you want to require signed
|
|
// URLs in requests for objects in the target origin that match the PathPattern
|
|
// for this cache behavior, specify true for Enabled, and specify the applicable
|
|
// values for Quantity and Items.If you don't want to require signed URLs in
|
|
// requests for objects that match PathPattern, specify false for Enabled and
|
|
// 0 for Quantity. Omit Items. To add, change, or remove one or more trusted
|
|
// signers, change Enabled to true (if it's currently false), change Quantity
|
|
// as applicable, and specify all of the trusted signers that you want to include
|
|
// in the updated distribution.
|
|
//
|
|
// TrustedSigners is a required field
|
|
TrustedSigners *TrustedSigners `type:"structure" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s StreamingDistributionSummary) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s StreamingDistributionSummary) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// SetARN sets the ARN field's value.
|
|
func (s *StreamingDistributionSummary) SetARN(v string) *StreamingDistributionSummary {
|
|
s.ARN = &v
|
|
return s
|
|
}
|
|
|
|
// SetAliases sets the Aliases field's value.
|
|
func (s *StreamingDistributionSummary) SetAliases(v *Aliases) *StreamingDistributionSummary {
|
|
s.Aliases = v
|
|
return s
|
|
}
|
|
|
|
// SetComment sets the Comment field's value.
|
|
func (s *StreamingDistributionSummary) SetComment(v string) *StreamingDistributionSummary {
|
|
s.Comment = &v
|
|
return s
|
|
}
|
|
|
|
// SetDomainName sets the DomainName field's value.
|
|
func (s *StreamingDistributionSummary) SetDomainName(v string) *StreamingDistributionSummary {
|
|
s.DomainName = &v
|
|
return s
|
|
}
|
|
|
|
// SetEnabled sets the Enabled field's value.
|
|
func (s *StreamingDistributionSummary) SetEnabled(v bool) *StreamingDistributionSummary {
|
|
s.Enabled = &v
|
|
return s
|
|
}
|
|
|
|
// SetId sets the Id field's value.
|
|
func (s *StreamingDistributionSummary) SetId(v string) *StreamingDistributionSummary {
|
|
s.Id = &v
|
|
return s
|
|
}
|
|
|
|
// SetLastModifiedTime sets the LastModifiedTime field's value.
|
|
func (s *StreamingDistributionSummary) SetLastModifiedTime(v time.Time) *StreamingDistributionSummary {
|
|
s.LastModifiedTime = &v
|
|
return s
|
|
}
|
|
|
|
// SetPriceClass sets the PriceClass field's value.
|
|
func (s *StreamingDistributionSummary) SetPriceClass(v string) *StreamingDistributionSummary {
|
|
s.PriceClass = &v
|
|
return s
|
|
}
|
|
|
|
// SetS3Origin sets the S3Origin field's value.
|
|
func (s *StreamingDistributionSummary) SetS3Origin(v *S3Origin) *StreamingDistributionSummary {
|
|
s.S3Origin = v
|
|
return s
|
|
}
|
|
|
|
// SetStatus sets the Status field's value.
|
|
func (s *StreamingDistributionSummary) SetStatus(v string) *StreamingDistributionSummary {
|
|
s.Status = &v
|
|
return s
|
|
}
|
|
|
|
// SetTrustedSigners sets the TrustedSigners field's value.
|
|
func (s *StreamingDistributionSummary) SetTrustedSigners(v *TrustedSigners) *StreamingDistributionSummary {
|
|
s.TrustedSigners = v
|
|
return s
|
|
}
|
|
|
|
// A complex type that controls whether access logs are written for this streaming
|
|
// distribution.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/StreamingLoggingConfig
|
|
type StreamingLoggingConfig struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// The Amazon S3 bucket to store the access logs in, for example, myawslogbucket.s3.amazonaws.com.
|
|
//
|
|
// Bucket is a required field
|
|
Bucket *string `type:"string" required:"true"`
|
|
|
|
// Specifies whether you want CloudFront to save access logs to an Amazon S3
|
|
// bucket. If you don't want to enable logging when you create a streaming distribution
|
|
// or if you want to disable logging for an existing streaming distribution,
|
|
// specify false for Enabled, and specify empty Bucket and Prefix elements.
|
|
// If you specify false for Enabled but you specify values for Bucket and Prefix,
|
|
// the values are automatically deleted.
|
|
//
|
|
// Enabled is a required field
|
|
Enabled *bool `type:"boolean" required:"true"`
|
|
|
|
// An optional string that you want CloudFront to prefix to the access log filenames
|
|
// for this streaming distribution, for example, myprefix/. If you want to enable
|
|
// logging, but you don't want to specify a prefix, you still must include an
|
|
// empty Prefix element in the Logging element.
|
|
//
|
|
// Prefix is a required field
|
|
Prefix *string `type:"string" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s StreamingLoggingConfig) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s StreamingLoggingConfig) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *StreamingLoggingConfig) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "StreamingLoggingConfig"}
|
|
if s.Bucket == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Bucket"))
|
|
}
|
|
if s.Enabled == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Enabled"))
|
|
}
|
|
if s.Prefix == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Prefix"))
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetBucket sets the Bucket field's value.
|
|
func (s *StreamingLoggingConfig) SetBucket(v string) *StreamingLoggingConfig {
|
|
s.Bucket = &v
|
|
return s
|
|
}
|
|
|
|
// SetEnabled sets the Enabled field's value.
|
|
func (s *StreamingLoggingConfig) SetEnabled(v bool) *StreamingLoggingConfig {
|
|
s.Enabled = &v
|
|
return s
|
|
}
|
|
|
|
// SetPrefix sets the Prefix field's value.
|
|
func (s *StreamingLoggingConfig) SetPrefix(v string) *StreamingLoggingConfig {
|
|
s.Prefix = &v
|
|
return s
|
|
}
|
|
|
|
// A complex type that contains Tag key and Tag value.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/Tag
|
|
type Tag struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// A string that contains Tag key.
|
|
//
|
|
// The string length should be between 1 and 128 characters. Valid characters
|
|
// include a-z, A-Z, 0-9, space, and the special characters _ - . : / = + @.
|
|
//
|
|
// Key is a required field
|
|
Key *string `min:"1" type:"string" required:"true"`
|
|
|
|
// A string that contains an optional Tag value.
|
|
//
|
|
// The string length should be between 0 and 256 characters. Valid characters
|
|
// include a-z, A-Z, 0-9, space, and the special characters _ - . : / = + @.
|
|
Value *string `type:"string"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s Tag) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s Tag) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *Tag) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "Tag"}
|
|
if s.Key == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Key"))
|
|
}
|
|
if s.Key != nil && len(*s.Key) < 1 {
|
|
invalidParams.Add(request.NewErrParamMinLen("Key", 1))
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetKey sets the Key field's value.
|
|
func (s *Tag) SetKey(v string) *Tag {
|
|
s.Key = &v
|
|
return s
|
|
}
|
|
|
|
// SetValue sets the Value field's value.
|
|
func (s *Tag) SetValue(v string) *Tag {
|
|
s.Value = &v
|
|
return s
|
|
}
|
|
|
|
// A complex type that contains zero or more Tag elements.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/TagKeys
|
|
type TagKeys struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// A complex type that contains Tag key elements.
|
|
Items []*string `locationNameList:"Key" type:"list"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s TagKeys) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s TagKeys) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// SetItems sets the Items field's value.
|
|
func (s *TagKeys) SetItems(v []*string) *TagKeys {
|
|
s.Items = v
|
|
return s
|
|
}
|
|
|
|
// The request to add tags to a CloudFront resource.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/TagResourceRequest
|
|
type TagResourceInput struct {
|
|
_ struct{} `type:"structure" payload:"Tags"`
|
|
|
|
// An ARN of a CloudFront resource.
|
|
//
|
|
// Resource is a required field
|
|
Resource *string `location:"querystring" locationName:"Resource" type:"string" required:"true"`
|
|
|
|
// A complex type that contains zero or more Tag elements.
|
|
//
|
|
// Tags is a required field
|
|
Tags *Tags `locationName:"Tags" type:"structure" required:"true" xmlURI:"http://cloudfront.amazonaws.com/doc/2017-03-25/"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s TagResourceInput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s TagResourceInput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *TagResourceInput) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"}
|
|
if s.Resource == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Resource"))
|
|
}
|
|
if s.Tags == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Tags"))
|
|
}
|
|
if s.Tags != nil {
|
|
if err := s.Tags.Validate(); err != nil {
|
|
invalidParams.AddNested("Tags", err.(request.ErrInvalidParams))
|
|
}
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetResource sets the Resource field's value.
|
|
func (s *TagResourceInput) SetResource(v string) *TagResourceInput {
|
|
s.Resource = &v
|
|
return s
|
|
}
|
|
|
|
// SetTags sets the Tags field's value.
|
|
func (s *TagResourceInput) SetTags(v *Tags) *TagResourceInput {
|
|
s.Tags = v
|
|
return s
|
|
}
|
|
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/TagResourceOutput
|
|
type TagResourceOutput struct {
|
|
_ struct{} `type:"structure"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s TagResourceOutput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s TagResourceOutput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// A complex type that contains zero or more Tag elements.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/Tags
|
|
type Tags struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// A complex type that contains Tag elements.
|
|
Items []*Tag `locationNameList:"Tag" type:"list"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s Tags) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s Tags) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *Tags) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "Tags"}
|
|
if s.Items != nil {
|
|
for i, v := range s.Items {
|
|
if v == nil {
|
|
continue
|
|
}
|
|
if err := v.Validate(); err != nil {
|
|
invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Items", i), err.(request.ErrInvalidParams))
|
|
}
|
|
}
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetItems sets the Items field's value.
|
|
func (s *Tags) SetItems(v []*Tag) *Tags {
|
|
s.Items = v
|
|
return s
|
|
}
|
|
|
|
// A complex type that specifies the AWS accounts, if any, that you want to
|
|
// allow to create signed URLs for private content.
|
|
//
|
|
// If you want to require signed URLs in requests for objects in the target
|
|
// origin that match the PathPattern for this cache behavior, specify true for
|
|
// Enabled, and specify the applicable values for Quantity and Items. For more
|
|
// information, see Serving Private Content through CloudFront (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html)
|
|
// in the Amazon Amazon CloudFront Developer Guide.
|
|
//
|
|
// If you don't want to require signed URLs in requests for objects that match
|
|
// PathPattern, specify false for Enabled and 0 for Quantity. Omit Items.
|
|
//
|
|
// To add, change, or remove one or more trusted signers, change Enabled to
|
|
// true (if it's currently false), change Quantity as applicable, and specify
|
|
// all of the trusted signers that you want to include in the updated distribution.
|
|
//
|
|
// For more information about updating the distribution configuration, see DistributionConfig
|
|
// .
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/TrustedSigners
|
|
type TrustedSigners struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// Specifies whether you want to require viewers to use signed URLs to access
|
|
// the files specified by PathPattern and TargetOriginId.
|
|
//
|
|
// Enabled is a required field
|
|
Enabled *bool `type:"boolean" required:"true"`
|
|
|
|
// Optional: A complex type that contains trusted signers for this cache behavior.
|
|
// If Quantity is 0, you can omit Items.
|
|
Items []*string `locationNameList:"AwsAccountNumber" type:"list"`
|
|
|
|
// The number of trusted signers for this cache behavior.
|
|
//
|
|
// Quantity is a required field
|
|
Quantity *int64 `type:"integer" required:"true"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s TrustedSigners) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s TrustedSigners) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *TrustedSigners) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "TrustedSigners"}
|
|
if s.Enabled == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Enabled"))
|
|
}
|
|
if s.Quantity == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Quantity"))
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetEnabled sets the Enabled field's value.
|
|
func (s *TrustedSigners) SetEnabled(v bool) *TrustedSigners {
|
|
s.Enabled = &v
|
|
return s
|
|
}
|
|
|
|
// SetItems sets the Items field's value.
|
|
func (s *TrustedSigners) SetItems(v []*string) *TrustedSigners {
|
|
s.Items = v
|
|
return s
|
|
}
|
|
|
|
// SetQuantity sets the Quantity field's value.
|
|
func (s *TrustedSigners) SetQuantity(v int64) *TrustedSigners {
|
|
s.Quantity = &v
|
|
return s
|
|
}
|
|
|
|
// The request to remove tags from a CloudFront resource.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/UntagResourceRequest
|
|
type UntagResourceInput struct {
|
|
_ struct{} `type:"structure" payload:"TagKeys"`
|
|
|
|
// An ARN of a CloudFront resource.
|
|
//
|
|
// Resource is a required field
|
|
Resource *string `location:"querystring" locationName:"Resource" type:"string" required:"true"`
|
|
|
|
// A complex type that contains zero or more Tag key elements.
|
|
//
|
|
// TagKeys is a required field
|
|
TagKeys *TagKeys `locationName:"TagKeys" type:"structure" required:"true" xmlURI:"http://cloudfront.amazonaws.com/doc/2017-03-25/"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s UntagResourceInput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s UntagResourceInput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *UntagResourceInput) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"}
|
|
if s.Resource == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Resource"))
|
|
}
|
|
if s.TagKeys == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("TagKeys"))
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetResource sets the Resource field's value.
|
|
func (s *UntagResourceInput) SetResource(v string) *UntagResourceInput {
|
|
s.Resource = &v
|
|
return s
|
|
}
|
|
|
|
// SetTagKeys sets the TagKeys field's value.
|
|
func (s *UntagResourceInput) SetTagKeys(v *TagKeys) *UntagResourceInput {
|
|
s.TagKeys = v
|
|
return s
|
|
}
|
|
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/UntagResourceOutput
|
|
type UntagResourceOutput struct {
|
|
_ struct{} `type:"structure"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s UntagResourceOutput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s UntagResourceOutput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// The request to update an origin access identity.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/UpdateCloudFrontOriginAccessIdentityRequest
|
|
type UpdateCloudFrontOriginAccessIdentityInput struct {
|
|
_ struct{} `type:"structure" payload:"CloudFrontOriginAccessIdentityConfig"`
|
|
|
|
// The identity's configuration information.
|
|
//
|
|
// CloudFrontOriginAccessIdentityConfig is a required field
|
|
CloudFrontOriginAccessIdentityConfig *OriginAccessIdentityConfig `locationName:"CloudFrontOriginAccessIdentityConfig" type:"structure" required:"true" xmlURI:"http://cloudfront.amazonaws.com/doc/2017-03-25/"`
|
|
|
|
// The identity's id.
|
|
//
|
|
// Id is a required field
|
|
Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
|
|
|
|
// The value of the ETag header that you received when retrieving the identity's
|
|
// configuration. For example: E2QWRUHAPOMQZL.
|
|
IfMatch *string `location:"header" locationName:"If-Match" type:"string"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s UpdateCloudFrontOriginAccessIdentityInput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s UpdateCloudFrontOriginAccessIdentityInput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *UpdateCloudFrontOriginAccessIdentityInput) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "UpdateCloudFrontOriginAccessIdentityInput"}
|
|
if s.CloudFrontOriginAccessIdentityConfig == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("CloudFrontOriginAccessIdentityConfig"))
|
|
}
|
|
if s.Id == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Id"))
|
|
}
|
|
if s.CloudFrontOriginAccessIdentityConfig != nil {
|
|
if err := s.CloudFrontOriginAccessIdentityConfig.Validate(); err != nil {
|
|
invalidParams.AddNested("CloudFrontOriginAccessIdentityConfig", err.(request.ErrInvalidParams))
|
|
}
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetCloudFrontOriginAccessIdentityConfig sets the CloudFrontOriginAccessIdentityConfig field's value.
|
|
func (s *UpdateCloudFrontOriginAccessIdentityInput) SetCloudFrontOriginAccessIdentityConfig(v *OriginAccessIdentityConfig) *UpdateCloudFrontOriginAccessIdentityInput {
|
|
s.CloudFrontOriginAccessIdentityConfig = v
|
|
return s
|
|
}
|
|
|
|
// SetId sets the Id field's value.
|
|
func (s *UpdateCloudFrontOriginAccessIdentityInput) SetId(v string) *UpdateCloudFrontOriginAccessIdentityInput {
|
|
s.Id = &v
|
|
return s
|
|
}
|
|
|
|
// SetIfMatch sets the IfMatch field's value.
|
|
func (s *UpdateCloudFrontOriginAccessIdentityInput) SetIfMatch(v string) *UpdateCloudFrontOriginAccessIdentityInput {
|
|
s.IfMatch = &v
|
|
return s
|
|
}
|
|
|
|
// The returned result of the corresponding request.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/UpdateCloudFrontOriginAccessIdentityResult
|
|
type UpdateCloudFrontOriginAccessIdentityOutput struct {
|
|
_ struct{} `type:"structure" payload:"CloudFrontOriginAccessIdentity"`
|
|
|
|
// The origin access identity's information.
|
|
CloudFrontOriginAccessIdentity *OriginAccessIdentity `type:"structure"`
|
|
|
|
// The current version of the configuration. For example: E2QWRUHAPOMQZL.
|
|
ETag *string `location:"header" locationName:"ETag" type:"string"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s UpdateCloudFrontOriginAccessIdentityOutput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s UpdateCloudFrontOriginAccessIdentityOutput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// SetCloudFrontOriginAccessIdentity sets the CloudFrontOriginAccessIdentity field's value.
|
|
func (s *UpdateCloudFrontOriginAccessIdentityOutput) SetCloudFrontOriginAccessIdentity(v *OriginAccessIdentity) *UpdateCloudFrontOriginAccessIdentityOutput {
|
|
s.CloudFrontOriginAccessIdentity = v
|
|
return s
|
|
}
|
|
|
|
// SetETag sets the ETag field's value.
|
|
func (s *UpdateCloudFrontOriginAccessIdentityOutput) SetETag(v string) *UpdateCloudFrontOriginAccessIdentityOutput {
|
|
s.ETag = &v
|
|
return s
|
|
}
|
|
|
|
// The request to update a distribution.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/UpdateDistributionRequest
|
|
type UpdateDistributionInput struct {
|
|
_ struct{} `type:"structure" payload:"DistributionConfig"`
|
|
|
|
// The distribution's configuration information.
|
|
//
|
|
// DistributionConfig is a required field
|
|
DistributionConfig *DistributionConfig `locationName:"DistributionConfig" type:"structure" required:"true" xmlURI:"http://cloudfront.amazonaws.com/doc/2017-03-25/"`
|
|
|
|
// The distribution's id.
|
|
//
|
|
// Id is a required field
|
|
Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
|
|
|
|
// The value of the ETag header that you received when retrieving the distribution's
|
|
// configuration. For example: E2QWRUHAPOMQZL.
|
|
IfMatch *string `location:"header" locationName:"If-Match" type:"string"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s UpdateDistributionInput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s UpdateDistributionInput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *UpdateDistributionInput) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "UpdateDistributionInput"}
|
|
if s.DistributionConfig == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("DistributionConfig"))
|
|
}
|
|
if s.Id == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Id"))
|
|
}
|
|
if s.DistributionConfig != nil {
|
|
if err := s.DistributionConfig.Validate(); err != nil {
|
|
invalidParams.AddNested("DistributionConfig", err.(request.ErrInvalidParams))
|
|
}
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetDistributionConfig sets the DistributionConfig field's value.
|
|
func (s *UpdateDistributionInput) SetDistributionConfig(v *DistributionConfig) *UpdateDistributionInput {
|
|
s.DistributionConfig = v
|
|
return s
|
|
}
|
|
|
|
// SetId sets the Id field's value.
|
|
func (s *UpdateDistributionInput) SetId(v string) *UpdateDistributionInput {
|
|
s.Id = &v
|
|
return s
|
|
}
|
|
|
|
// SetIfMatch sets the IfMatch field's value.
|
|
func (s *UpdateDistributionInput) SetIfMatch(v string) *UpdateDistributionInput {
|
|
s.IfMatch = &v
|
|
return s
|
|
}
|
|
|
|
// The returned result of the corresponding request.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/UpdateDistributionResult
|
|
type UpdateDistributionOutput struct {
|
|
_ struct{} `type:"structure" payload:"Distribution"`
|
|
|
|
// The distribution's information.
|
|
Distribution *Distribution `type:"structure"`
|
|
|
|
// The current version of the configuration. For example: E2QWRUHAPOMQZL.
|
|
ETag *string `location:"header" locationName:"ETag" type:"string"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s UpdateDistributionOutput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s UpdateDistributionOutput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// SetDistribution sets the Distribution field's value.
|
|
func (s *UpdateDistributionOutput) SetDistribution(v *Distribution) *UpdateDistributionOutput {
|
|
s.Distribution = v
|
|
return s
|
|
}
|
|
|
|
// SetETag sets the ETag field's value.
|
|
func (s *UpdateDistributionOutput) SetETag(v string) *UpdateDistributionOutput {
|
|
s.ETag = &v
|
|
return s
|
|
}
|
|
|
|
// The request to update a streaming distribution.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/UpdateStreamingDistributionRequest
|
|
type UpdateStreamingDistributionInput struct {
|
|
_ struct{} `type:"structure" payload:"StreamingDistributionConfig"`
|
|
|
|
// The streaming distribution's id.
|
|
//
|
|
// Id is a required field
|
|
Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
|
|
|
|
// The value of the ETag header that you received when retrieving the streaming
|
|
// distribution's configuration. For example: E2QWRUHAPOMQZL.
|
|
IfMatch *string `location:"header" locationName:"If-Match" type:"string"`
|
|
|
|
// The streaming distribution's configuration information.
|
|
//
|
|
// StreamingDistributionConfig is a required field
|
|
StreamingDistributionConfig *StreamingDistributionConfig `locationName:"StreamingDistributionConfig" type:"structure" required:"true" xmlURI:"http://cloudfront.amazonaws.com/doc/2017-03-25/"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s UpdateStreamingDistributionInput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s UpdateStreamingDistributionInput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// Validate inspects the fields of the type to determine if they are valid.
|
|
func (s *UpdateStreamingDistributionInput) Validate() error {
|
|
invalidParams := request.ErrInvalidParams{Context: "UpdateStreamingDistributionInput"}
|
|
if s.Id == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("Id"))
|
|
}
|
|
if s.StreamingDistributionConfig == nil {
|
|
invalidParams.Add(request.NewErrParamRequired("StreamingDistributionConfig"))
|
|
}
|
|
if s.StreamingDistributionConfig != nil {
|
|
if err := s.StreamingDistributionConfig.Validate(); err != nil {
|
|
invalidParams.AddNested("StreamingDistributionConfig", err.(request.ErrInvalidParams))
|
|
}
|
|
}
|
|
|
|
if invalidParams.Len() > 0 {
|
|
return invalidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SetId sets the Id field's value.
|
|
func (s *UpdateStreamingDistributionInput) SetId(v string) *UpdateStreamingDistributionInput {
|
|
s.Id = &v
|
|
return s
|
|
}
|
|
|
|
// SetIfMatch sets the IfMatch field's value.
|
|
func (s *UpdateStreamingDistributionInput) SetIfMatch(v string) *UpdateStreamingDistributionInput {
|
|
s.IfMatch = &v
|
|
return s
|
|
}
|
|
|
|
// SetStreamingDistributionConfig sets the StreamingDistributionConfig field's value.
|
|
func (s *UpdateStreamingDistributionInput) SetStreamingDistributionConfig(v *StreamingDistributionConfig) *UpdateStreamingDistributionInput {
|
|
s.StreamingDistributionConfig = v
|
|
return s
|
|
}
|
|
|
|
// The returned result of the corresponding request.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/UpdateStreamingDistributionResult
|
|
type UpdateStreamingDistributionOutput struct {
|
|
_ struct{} `type:"structure" payload:"StreamingDistribution"`
|
|
|
|
// The current version of the configuration. For example: E2QWRUHAPOMQZL.
|
|
ETag *string `location:"header" locationName:"ETag" type:"string"`
|
|
|
|
// The streaming distribution's information.
|
|
StreamingDistribution *StreamingDistribution `type:"structure"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s UpdateStreamingDistributionOutput) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s UpdateStreamingDistributionOutput) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// SetETag sets the ETag field's value.
|
|
func (s *UpdateStreamingDistributionOutput) SetETag(v string) *UpdateStreamingDistributionOutput {
|
|
s.ETag = &v
|
|
return s
|
|
}
|
|
|
|
// SetStreamingDistribution sets the StreamingDistribution field's value.
|
|
func (s *UpdateStreamingDistributionOutput) SetStreamingDistribution(v *StreamingDistribution) *UpdateStreamingDistributionOutput {
|
|
s.StreamingDistribution = v
|
|
return s
|
|
}
|
|
|
|
// A complex type that specifies the following:
|
|
//
|
|
// * Whether you want viewers to use HTTP or HTTPS to request your objects.
|
|
//
|
|
// * If you want viewers to use HTTPS, whether you're using an alternate
|
|
// domain name such as example.com or the CloudFront domain name for your
|
|
// distribution, such as d111111abcdef8.cloudfront.net.
|
|
//
|
|
// * If you're using an alternate domain name, whether AWS Certificate Manager
|
|
// (ACM) provided the certificate, or you purchased a certificate from a
|
|
// third-party certificate authority and imported it into ACM or uploaded
|
|
// it to the IAM certificate store.
|
|
//
|
|
// You must specify only one of the following values:
|
|
//
|
|
// * ViewerCertificate$ACMCertificateArn
|
|
//
|
|
// * ViewerCertificate$IAMCertificateId
|
|
//
|
|
// * ViewerCertificate$CloudFrontDefaultCertificate
|
|
//
|
|
// Don't specify false for CloudFrontDefaultCertificate.
|
|
//
|
|
// If you want viewers to use HTTP instead of HTTPS to request your objects:
|
|
// Specify the following value:
|
|
//
|
|
// <CloudFrontDefaultCertificate>true<CloudFrontDefaultCertificate>
|
|
//
|
|
// In addition, specify allow-all for ViewerProtocolPolicy for all of your cache
|
|
// behaviors.
|
|
//
|
|
// If you want viewers to use HTTPS to request your objects: Choose the type
|
|
// of certificate that you want to use based on whether you're using an alternate
|
|
// domain name for your objects or the CloudFront domain name:
|
|
//
|
|
// * If you're using an alternate domain name, such as example.com: Specify
|
|
// one of the following values, depending on whether ACM provided your certificate
|
|
// or you purchased your certificate from third-party certificate authority:
|
|
//
|
|
// <ACMCertificateArn>ARN for ACM SSL/TLS certificate<ACMCertificateArn> where
|
|
// ARN for ACM SSL/TLS certificate is the ARN for the ACM SSL/TLS certificate
|
|
// that you want to use for this distribution.
|
|
//
|
|
// <IAMCertificateId>IAM certificate ID<IAMCertificateId> where IAM certificate
|
|
// ID is the ID that IAM returned when you added the certificate to the IAM
|
|
// certificate store.
|
|
//
|
|
// If you specify ACMCertificateArn or IAMCertificateId, you must also specify
|
|
// a value for SSLSupportMethod.
|
|
//
|
|
// If you choose to use an ACM certificate or a certificate in the IAM certificate
|
|
// store, we recommend that you use only an alternate domain name in your
|
|
// object URLs (https://example.com/logo.jpg). If you use the domain name
|
|
// that is associated with your CloudFront distribution (such as https://d111111abcdef8.cloudfront.net/logo.jpg)
|
|
// and the viewer supports SNI, then CloudFront behaves normally. However,
|
|
// if the browser does not support SNI, the user's experience depends on
|
|
// the value that you choose for SSLSupportMethod:
|
|
//
|
|
// vip: The viewer displays a warning because there is a mismatch between the
|
|
// CloudFront domain name and the domain name in your SSL/TLS certificate.
|
|
//
|
|
// sni-only: CloudFront drops the connection with the browser without returning
|
|
// the object.
|
|
//
|
|
// * If you're using the CloudFront domain name for your distribution, such
|
|
// as d111111abcdef8.cloudfront.net: Specify the following value:
|
|
//
|
|
// <CloudFrontDefaultCertificate>true<CloudFrontDefaultCertificate>
|
|
//
|
|
// If you want viewers to use HTTPS, you must also specify one of the following
|
|
// values in your cache behaviors:
|
|
//
|
|
// * <ViewerProtocolPolicy>https-only<ViewerProtocolPolicy>
|
|
//
|
|
// * <ViewerProtocolPolicy>redirect-to-https<ViewerProtocolPolicy>
|
|
//
|
|
// You can also optionally require that CloudFront use HTTPS to communicate
|
|
// with your origin by specifying one of the following values for the applicable
|
|
// origins:
|
|
//
|
|
// * <OriginProtocolPolicy>https-only<OriginProtocolPolicy>
|
|
//
|
|
// * <OriginProtocolPolicy>match-viewer<OriginProtocolPolicy>
|
|
//
|
|
// For more information, see Using Alternate Domain Names and HTTPS (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/SecureConnections.html#CNAMEsAndHTTPS)
|
|
// in the Amazon CloudFront Developer Guide.
|
|
// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/ViewerCertificate
|
|
type ViewerCertificate struct {
|
|
_ struct{} `type:"structure"`
|
|
|
|
// For information about how and when to use ACMCertificateArn, see ViewerCertificate.
|
|
ACMCertificateArn *string `type:"string"`
|
|
|
|
// This field has been deprecated. Use one of the following fields instead:
|
|
//
|
|
// * ViewerCertificate$ACMCertificateArn
|
|
//
|
|
// * ViewerCertificate$IAMCertificateId
|
|
//
|
|
// * ViewerCertificate$CloudFrontDefaultCertificate
|
|
Certificate *string `deprecated:"true" type:"string"`
|
|
|
|
// This field has been deprecated. Use one of the following fields instead:
|
|
//
|
|
// * ViewerCertificate$ACMCertificateArn
|
|
//
|
|
// * ViewerCertificate$IAMCertificateId
|
|
//
|
|
// * ViewerCertificate$CloudFrontDefaultCertificate
|
|
CertificateSource *string `deprecated:"true" type:"string" enum:"CertificateSource"`
|
|
|
|
// For information about how and when to use CloudFrontDefaultCertificate, see
|
|
// ViewerCertificate.
|
|
CloudFrontDefaultCertificate *bool `type:"boolean"`
|
|
|
|
// For information about how and when to use IAMCertificateId, see ViewerCertificate.
|
|
IAMCertificateId *string `type:"string"`
|
|
|
|
// Specify the security policy that you want CloudFront to use for HTTPS connections.
|
|
// A security policy determines two settings:
|
|
//
|
|
// * The minimum SSL/TLS protocol that CloudFront uses to communicate with
|
|
// viewers
|
|
//
|
|
// * The cipher that CloudFront uses to encrypt the content that it returns
|
|
// to viewers
|
|
//
|
|
// On the CloudFront console, this setting is called Security policy.
|
|
//
|
|
// We recommend that you specify TLSv1.1_2016 unless your users are using browsers
|
|
// or devices that do not support TLSv1.1 or later.
|
|
//
|
|
// When both of the following are true, you must specify TLSv1 or later for
|
|
// the security policy:
|
|
//
|
|
// * You're using a custom certificate: you specified a value for ACMCertificateArn
|
|
// or for IAMCertificateId
|
|
//
|
|
// * You're using SNI: you specified sni-only for SSLSupportMethod
|
|
//
|
|
// If you specify true for CloudFrontDefaultCertificate, CloudFront automatically
|
|
// sets the security policy to TLSv1 regardless of the value that you specify
|
|
// for MinimumProtocolVersion.
|
|
//
|
|
// For information about the relationship between the security policy that you
|
|
// choose and the protocols and ciphers that CloudFront uses to communicate
|
|
// with viewers, see Supported SSL/TLS Protocols and Ciphers for Communication
|
|
// Between Viewers and CloudFront (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/secure-connections-supported-viewer-protocols-ciphers.html#secure-connections-supported-ciphers)
|
|
// in the Amazon CloudFront Developer Guide.
|
|
MinimumProtocolVersion *string `type:"string" enum:"MinimumProtocolVersion"`
|
|
|
|
// If you specify a value for ViewerCertificate$ACMCertificateArn or for ViewerCertificate$IAMCertificateId,
|
|
// you must also specify how you want CloudFront to serve HTTPS requests: using
|
|
// a method that works for all clients or one that works for most clients:
|
|
//
|
|
// * vip: CloudFront uses dedicated IP addresses for your content and can
|
|
// respond to HTTPS requests from any viewer. However, you will incur additional
|
|
// monthly charges.
|
|
//
|
|
// * sni-only: CloudFront can respond to HTTPS requests from viewers that
|
|
// support Server Name Indication (SNI). All modern browsers support SNI,
|
|
// but some browsers still in use don't support SNI. If some of your users'
|
|
// browsers don't support SNI, we recommend that you do one of the following:
|
|
//
|
|
// Use the vip option (dedicated IP addresses) instead of sni-only.
|
|
//
|
|
// Use the CloudFront SSL/TLS certificate instead of a custom certificate. This
|
|
// requires that you use the CloudFront domain name of your distribution
|
|
// in the URLs for your objects, for example, https://d111111abcdef8.cloudfront.net/logo.png.
|
|
//
|
|
// If you can control which browser your users use, upgrade the browser to one
|
|
// that supports SNI.
|
|
//
|
|
// Use HTTP instead of HTTPS.
|
|
//
|
|
// Don't specify a value for SSLSupportMethod if you specified <CloudFrontDefaultCertificate>true<CloudFrontDefaultCertificate>.
|
|
//
|
|
// For more information, see Using Alternate Domain Names and HTTPS (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/SecureConnections.html#CNAMEsAndHTTPS.html)
|
|
// in the Amazon CloudFront Developer Guide.
|
|
SSLSupportMethod *string `type:"string" enum:"SSLSupportMethod"`
|
|
}
|
|
|
|
// String returns the string representation
|
|
func (s ViewerCertificate) String() string {
|
|
return awsutil.Prettify(s)
|
|
}
|
|
|
|
// GoString returns the string representation
|
|
func (s ViewerCertificate) GoString() string {
|
|
return s.String()
|
|
}
|
|
|
|
// SetACMCertificateArn sets the ACMCertificateArn field's value.
|
|
func (s *ViewerCertificate) SetACMCertificateArn(v string) *ViewerCertificate {
|
|
s.ACMCertificateArn = &v
|
|
return s
|
|
}
|
|
|
|
// SetCertificate sets the Certificate field's value.
|
|
func (s *ViewerCertificate) SetCertificate(v string) *ViewerCertificate {
|
|
s.Certificate = &v
|
|
return s
|
|
}
|
|
|
|
// SetCertificateSource sets the CertificateSource field's value.
|
|
func (s *ViewerCertificate) SetCertificateSource(v string) *ViewerCertificate {
|
|
s.CertificateSource = &v
|
|
return s
|
|
}
|
|
|
|
// SetCloudFrontDefaultCertificate sets the CloudFrontDefaultCertificate field's value.
|
|
func (s *ViewerCertificate) SetCloudFrontDefaultCertificate(v bool) *ViewerCertificate {
|
|
s.CloudFrontDefaultCertificate = &v
|
|
return s
|
|
}
|
|
|
|
// SetIAMCertificateId sets the IAMCertificateId field's value.
|
|
func (s *ViewerCertificate) SetIAMCertificateId(v string) *ViewerCertificate {
|
|
s.IAMCertificateId = &v
|
|
return s
|
|
}
|
|
|
|
// SetMinimumProtocolVersion sets the MinimumProtocolVersion field's value.
|
|
func (s *ViewerCertificate) SetMinimumProtocolVersion(v string) *ViewerCertificate {
|
|
s.MinimumProtocolVersion = &v
|
|
return s
|
|
}
|
|
|
|
// SetSSLSupportMethod sets the SSLSupportMethod field's value.
|
|
func (s *ViewerCertificate) SetSSLSupportMethod(v string) *ViewerCertificate {
|
|
s.SSLSupportMethod = &v
|
|
return s
|
|
}
|
|
|
|
const (
|
|
// CertificateSourceCloudfront is a CertificateSource enum value
|
|
CertificateSourceCloudfront = "cloudfront"
|
|
|
|
// CertificateSourceIam is a CertificateSource enum value
|
|
CertificateSourceIam = "iam"
|
|
|
|
// CertificateSourceAcm is a CertificateSource enum value
|
|
CertificateSourceAcm = "acm"
|
|
)
|
|
|
|
const (
|
|
// EventTypeViewerRequest is a EventType enum value
|
|
EventTypeViewerRequest = "viewer-request"
|
|
|
|
// EventTypeViewerResponse is a EventType enum value
|
|
EventTypeViewerResponse = "viewer-response"
|
|
|
|
// EventTypeOriginRequest is a EventType enum value
|
|
EventTypeOriginRequest = "origin-request"
|
|
|
|
// EventTypeOriginResponse is a EventType enum value
|
|
EventTypeOriginResponse = "origin-response"
|
|
)
|
|
|
|
const (
|
|
// GeoRestrictionTypeBlacklist is a GeoRestrictionType enum value
|
|
GeoRestrictionTypeBlacklist = "blacklist"
|
|
|
|
// GeoRestrictionTypeWhitelist is a GeoRestrictionType enum value
|
|
GeoRestrictionTypeWhitelist = "whitelist"
|
|
|
|
// GeoRestrictionTypeNone is a GeoRestrictionType enum value
|
|
GeoRestrictionTypeNone = "none"
|
|
)
|
|
|
|
const (
|
|
// HttpVersionHttp11 is a HttpVersion enum value
|
|
HttpVersionHttp11 = "http1.1"
|
|
|
|
// HttpVersionHttp2 is a HttpVersion enum value
|
|
HttpVersionHttp2 = "http2"
|
|
)
|
|
|
|
const (
|
|
// ItemSelectionNone is a ItemSelection enum value
|
|
ItemSelectionNone = "none"
|
|
|
|
// ItemSelectionWhitelist is a ItemSelection enum value
|
|
ItemSelectionWhitelist = "whitelist"
|
|
|
|
// ItemSelectionAll is a ItemSelection enum value
|
|
ItemSelectionAll = "all"
|
|
)
|
|
|
|
const (
|
|
// MethodGet is a Method enum value
|
|
MethodGet = "GET"
|
|
|
|
// MethodHead is a Method enum value
|
|
MethodHead = "HEAD"
|
|
|
|
// MethodPost is a Method enum value
|
|
MethodPost = "POST"
|
|
|
|
// MethodPut is a Method enum value
|
|
MethodPut = "PUT"
|
|
|
|
// MethodPatch is a Method enum value
|
|
MethodPatch = "PATCH"
|
|
|
|
// MethodOptions is a Method enum value
|
|
MethodOptions = "OPTIONS"
|
|
|
|
// MethodDelete is a Method enum value
|
|
MethodDelete = "DELETE"
|
|
)
|
|
|
|
const (
|
|
// MinimumProtocolVersionSslv3 is a MinimumProtocolVersion enum value
|
|
MinimumProtocolVersionSslv3 = "SSLv3"
|
|
|
|
// MinimumProtocolVersionTlsv1 is a MinimumProtocolVersion enum value
|
|
MinimumProtocolVersionTlsv1 = "TLSv1"
|
|
|
|
// MinimumProtocolVersionTlsv12016 is a MinimumProtocolVersion enum value
|
|
MinimumProtocolVersionTlsv12016 = "TLSv1_2016"
|
|
|
|
// MinimumProtocolVersionTlsv112016 is a MinimumProtocolVersion enum value
|
|
MinimumProtocolVersionTlsv112016 = "TLSv1.1_2016"
|
|
|
|
// MinimumProtocolVersionTlsv122018 is a MinimumProtocolVersion enum value
|
|
MinimumProtocolVersionTlsv122018 = "TLSv1.2_2018"
|
|
)
|
|
|
|
const (
|
|
// OriginProtocolPolicyHttpOnly is a OriginProtocolPolicy enum value
|
|
OriginProtocolPolicyHttpOnly = "http-only"
|
|
|
|
// OriginProtocolPolicyMatchViewer is a OriginProtocolPolicy enum value
|
|
OriginProtocolPolicyMatchViewer = "match-viewer"
|
|
|
|
// OriginProtocolPolicyHttpsOnly is a OriginProtocolPolicy enum value
|
|
OriginProtocolPolicyHttpsOnly = "https-only"
|
|
)
|
|
|
|
const (
|
|
// PriceClassPriceClass100 is a PriceClass enum value
|
|
PriceClassPriceClass100 = "PriceClass_100"
|
|
|
|
// PriceClassPriceClass200 is a PriceClass enum value
|
|
PriceClassPriceClass200 = "PriceClass_200"
|
|
|
|
// PriceClassPriceClassAll is a PriceClass enum value
|
|
PriceClassPriceClassAll = "PriceClass_All"
|
|
)
|
|
|
|
const (
|
|
// SSLSupportMethodSniOnly is a SSLSupportMethod enum value
|
|
SSLSupportMethodSniOnly = "sni-only"
|
|
|
|
// SSLSupportMethodVip is a SSLSupportMethod enum value
|
|
SSLSupportMethodVip = "vip"
|
|
)
|
|
|
|
const (
|
|
// SslProtocolSslv3 is a SslProtocol enum value
|
|
SslProtocolSslv3 = "SSLv3"
|
|
|
|
// SslProtocolTlsv1 is a SslProtocol enum value
|
|
SslProtocolTlsv1 = "TLSv1"
|
|
|
|
// SslProtocolTlsv11 is a SslProtocol enum value
|
|
SslProtocolTlsv11 = "TLSv1.1"
|
|
|
|
// SslProtocolTlsv12 is a SslProtocol enum value
|
|
SslProtocolTlsv12 = "TLSv1.2"
|
|
)
|
|
|
|
const (
|
|
// ViewerProtocolPolicyAllowAll is a ViewerProtocolPolicy enum value
|
|
ViewerProtocolPolicyAllowAll = "allow-all"
|
|
|
|
// ViewerProtocolPolicyHttpsOnly is a ViewerProtocolPolicy enum value
|
|
ViewerProtocolPolicyHttpsOnly = "https-only"
|
|
|
|
// ViewerProtocolPolicyRedirectToHttps is a ViewerProtocolPolicy enum value
|
|
ViewerProtocolPolicyRedirectToHttps = "redirect-to-https"
|
|
)
|