cloudfront

package
v1.4.16-0...-c0d7d32 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 7, 2016 License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Overview

Package cloudfront provides a client for Amazon CloudFront.

Index

Examples

Constants

View Source
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"
)
View Source
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"
)
View Source
const (
	// HttpVersionHttp11 is a HttpVersion enum value
	HttpVersionHttp11 = "http1.1"

	// HttpVersionHttp2 is a HttpVersion enum value
	HttpVersionHttp2 = "http2"
)
View Source
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"
)
View Source
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"
)
View Source
const (
	// MinimumProtocolVersionSslv3 is a MinimumProtocolVersion enum value
	MinimumProtocolVersionSslv3 = "SSLv3"

	// MinimumProtocolVersionTlsv1 is a MinimumProtocolVersion enum value
	MinimumProtocolVersionTlsv1 = "TLSv1"
)
View Source
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"
)
View Source
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"
)
View Source
const (
	// SSLSupportMethodSniOnly is a SSLSupportMethod enum value
	SSLSupportMethodSniOnly = "sni-only"

	// SSLSupportMethodVip is a SSLSupportMethod enum value
	SSLSupportMethodVip = "vip"
)
View Source
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"
)
View Source
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"
)
View Source
const ServiceName = "cloudfront"

A ServiceName is the name of the service the client will make API calls to.

Variables

This section is empty.

Functions

This section is empty.

Types

type ActiveTrustedSigners

type ActiveTrustedSigners struct {

	// Each active trusted signer.
	//
	// Enabled is a required field
	Enabled *bool `type:"boolean" required:"true"`

	// A complex type that contains one Signer complex type for each unique trusted
	// signer that is specified in the TrustedSigners complex type, including trusted
	// signers in the default cache behavior and in all of the other cache behaviors.
	Items []*Signer `locationNameList:"Signer" type:"list"`

	// The number of unique trusted signers included in all cache behaviors. For
	// example, if three cache behaviors all list the same three AWS accounts, the
	// value of Quantity for ActiveTrustedSigners will be 3.
	//
	// Quantity is a required field
	Quantity *int64 `type:"integer" required:"true"`
	// contains filtered or unexported fields
}

A complex type that lists the AWS accounts, if any, that you included in the TrustedSigners complex type for the default cache behavior or for any of the other cache behaviors for this distribution. These are accounts that you want to allow to create signed URLs for private content.

func (ActiveTrustedSigners) GoString

func (s ActiveTrustedSigners) GoString() string

GoString returns the string representation

func (ActiveTrustedSigners) String

func (s ActiveTrustedSigners) String() string

String returns the string representation

type Aliases

type Aliases struct {

	// Optional: A complex type that contains CNAME elements, if any, for this distribution.
	// If Quantity is 0, you can omit Items.
	Items []*string `locationNameList:"CNAME" type:"list"`

	// The number of CNAMEs, if any, for this distribution.
	//
	// Quantity is a required field
	Quantity *int64 `type:"integer" required:"true"`
	// contains filtered or unexported fields
}

A complex type that contains information about CNAMEs (alternate domain names), if any, for this distribution.

func (Aliases) GoString

func (s Aliases) GoString() string

GoString returns the string representation

func (Aliases) String

func (s Aliases) String() string

String returns the string representation

func (*Aliases) Validate

func (s *Aliases) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type AllowedMethods

type AllowedMethods struct {

	// 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 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"`
	// contains filtered or unexported fields
}

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 may not want users to have permission to delete objects from your origin.

func (AllowedMethods) GoString

func (s AllowedMethods) GoString() string

GoString returns the string representation

func (AllowedMethods) String

func (s AllowedMethods) String() string

String returns the string representation

func (*AllowedMethods) Validate

func (s *AllowedMethods) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type CacheBehavior

type CacheBehavior struct {

	// 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 may not want users to have permission to delete objects from your origin.
	AllowedMethods *AllowedMethods `type:"structure"`

	// Whether you want CloudFront to automatically compress content for web requests
	// that include Accept-Encoding: gzip in the request header. If so, specify
	// true; if not, specify false. CloudFront compresses files larger than 1000
	// bytes and less than 1 megabyte for both Amazon S3 and custom origins. When
	// a CloudFront edge location is unusually busy, some files might not be compressed.
	// The value of the Content-Type header must be on the list of file types that
	// CloudFront will compress. For the current list, see Serving Compressed Content
	// (http://docs.aws.amazon.com/console/cloudfront/compressed-content) in the
	// Amazon CloudFront Developer Guide. If you configure CloudFront to compress
	// content, CloudFront removes the ETag response header from the objects that
	// it compresses. The ETag header indicates that the version in a CloudFront
	// edge cache is identical to the version on the origin server, but after compression
	// the two versions are no longer identical. As a result, for compressed objects,
	// CloudFront can't use the ETag header to determine whether an expired object
	// in the CloudFront edge cache is still the latest version.
	Compress *bool `type:"boolean"`

	// If you don't configure your origin to add a Cache-Control max-age directive
	// or an Expires header, DefaultTTL is the default amount of time (in seconds)
	// that an object is in a CloudFront cache 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. You can specify a value from 0 to 3,153,600,000 seconds (100
	// years).
	DefaultTTL *int64 `type:"long"`

	// A complex type that specifies how CloudFront handles query strings, cookies
	// and headers.
	//
	// ForwardedValues is a required field
	ForwardedValues *ForwardedValues `type:"structure" required:"true"`

	// The maximum amount of time (in seconds) that an object is in a CloudFront
	// cache 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. You can specify a value from 0 to 3,153,600,000
	// seconds (100 years).
	MaxTTL *int64 `type:"long"`

	// The minimum amount of time that you want objects to stay in CloudFront caches
	// before CloudFront queries your origin to see whether the object has been
	// updated.You can specify a value from 0 to 3,153,600,000 seconds (100 years).
	//
	// MinTTL is a required field
	MinTTL *int64 `type:"long" required:"true"`

	// The pattern (for example, images/*.jpg) that specifies which requests you
	// want this cache behavior to apply to. When CloudFront receives an end-user
	// request, the requested path is compared with path patterns in the order in
	// which cache behaviors are listed in the distribution. 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.
	//
	// PathPattern is a required field
	PathPattern *string `type:"string" required:"true"`

	// Indicates whether you want to distribute media files in Microsoft Smooth
	// Streaming format using the origin that is associated with this cache behavior.
	// If so, specify true; if not, specify false.
	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, go to Using a Signed
	// URL to Serve Private Content in the 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"`

	// Use this element to specify the protocol that users can use to access the
	// files in the origin specified by TargetOriginId when a request matches the
	// path pattern in PathPattern. If you want CloudFront to allow end users to
	// use any available protocol, specify allow-all. If you want CloudFront to
	// require HTTPS, specify https. If you want CloudFront to respond to an HTTP
	// request with an HTTP status code of 301 (Moved Permanently) and the HTTPS
	// URL, specify redirect-to-https. The viewer then resubmits the request using
	// the HTTPS URL.
	//
	// ViewerProtocolPolicy is a required field
	ViewerProtocolPolicy *string `type:"string" required:"true" enum:"ViewerProtocolPolicy"`
	// contains filtered or unexported fields
}

A complex type that describes how CloudFront processes requests. You can create up to 10 cache behaviors.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 will never be used. 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.

func (CacheBehavior) GoString

func (s CacheBehavior) GoString() string

GoString returns the string representation

func (CacheBehavior) String

func (s CacheBehavior) String() string

String returns the string representation

func (*CacheBehavior) Validate

func (s *CacheBehavior) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type CacheBehaviors

type CacheBehaviors struct {

	// 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"`
	// contains filtered or unexported fields
}

A complex type that contains zero or more CacheBehavior elements.

func (CacheBehaviors) GoString

func (s CacheBehaviors) GoString() string

GoString returns the string representation

func (CacheBehaviors) String

func (s CacheBehaviors) String() string

String returns the string representation

func (*CacheBehaviors) Validate

func (s *CacheBehaviors) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type CachedMethods

type CachedMethods struct {

	// 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"`
	// contains filtered or unexported fields
}

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 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.

func (CachedMethods) GoString

func (s CachedMethods) GoString() string

GoString returns the string representation

func (CachedMethods) String

func (s CachedMethods) String() string

String returns the string representation

func (*CachedMethods) Validate

func (s *CachedMethods) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type CloudFront

type CloudFront struct {
	*client.Client
}

Amazon CloudFront is a global content delivery network (CDN) service that accelerates delivery of your websites, APIs, video content or other web assets. It integrates with other Amazon Web Services products to give developers and businesses an easy way to accelerate content to end users with no minimum usage commitments. The service client's operations are safe to be used concurrently. It is not safe to mutate any of the client's properties though.

func New

func New(p client.ConfigProvider, cfgs ...*aws.Config) *CloudFront

New creates a new instance of the CloudFront client with a session. If additional configuration is needed for the client instance use the optional aws.Config parameter to add your extra config.

Example:

// Create a CloudFront client from just a session.
svc := cloudfront.New(mySession)

// Create a CloudFront client with additional configuration
svc := cloudfront.New(mySession, aws.NewConfig().WithRegion("us-west-2"))

func (*CloudFront) CreateCloudFrontOriginAccessIdentity

Create a new origin access identity.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/cloudfront"
)

func main() {
	sess, err := session.NewSession()
	if err != nil {
		fmt.Println("failed to create session,", err)
		return
	}

	svc := cloudfront.New(sess)

	params := &cloudfront.CreateCloudFrontOriginAccessIdentityInput{
		CloudFrontOriginAccessIdentityConfig: &cloudfront.OriginAccessIdentityConfig{ // Required
			CallerReference: aws.String("string"), // Required
			Comment:         aws.String("string"), // Required
		},
	}
	resp, err := svc.CreateCloudFrontOriginAccessIdentity(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*CloudFront) CreateCloudFrontOriginAccessIdentityRequest

func (c *CloudFront) CreateCloudFrontOriginAccessIdentityRequest(input *CreateCloudFrontOriginAccessIdentityInput) (req *request.Request, output *CreateCloudFrontOriginAccessIdentityOutput)

CreateCloudFrontOriginAccessIdentityRequest generates a "aws/request.Request" representing the client's request for the CreateCloudFrontOriginAccessIdentity operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the CreateCloudFrontOriginAccessIdentity method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// 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)
}

func (*CloudFront) CreateDistribution

func (c *CloudFront) CreateDistribution(input *CreateDistributionInput) (*CreateDistributionOutput, error)

Create a new distribution.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/cloudfront"
)

func main() {
	sess, err := session.NewSession()
	if err != nil {
		fmt.Println("failed to create session,", err)
		return
	}

	svc := cloudfront.New(sess)

	params := &cloudfront.CreateDistributionInput{
		DistributionConfig: &cloudfront.DistributionConfig{ // Required
			CallerReference: aws.String("string"), // Required
			Comment:         aws.String("string"), // Required
			DefaultCacheBehavior: &cloudfront.DefaultCacheBehavior{ // Required
				ForwardedValues: &cloudfront.ForwardedValues{ // Required
					Cookies: &cloudfront.CookiePreference{ // Required
						Forward: aws.String("ItemSelection"), // Required
						WhitelistedNames: &cloudfront.CookieNames{
							Quantity: aws.Int64(1), // Required
							Items: []*string{
								aws.String("string"), // Required
								// More values...
							},
						},
					},
					QueryString: aws.Bool(true), // Required
					Headers: &cloudfront.Headers{
						Quantity: aws.Int64(1), // Required
						Items: []*string{
							aws.String("string"), // Required
							// More values...
						},
					},
					QueryStringCacheKeys: &cloudfront.QueryStringCacheKeys{
						Quantity: aws.Int64(1), // Required
						Items: []*string{
							aws.String("string"), // Required
							// More values...
						},
					},
				},
				MinTTL:         aws.Int64(1),         // Required
				TargetOriginId: aws.String("string"), // Required
				TrustedSigners: &cloudfront.TrustedSigners{ // Required
					Enabled:  aws.Bool(true), // Required
					Quantity: aws.Int64(1),   // Required
					Items: []*string{
						aws.String("string"), // Required
						// More values...
					},
				},
				ViewerProtocolPolicy: aws.String("ViewerProtocolPolicy"), // Required
				AllowedMethods: &cloudfront.AllowedMethods{
					Items: []*string{ // Required
						aws.String("Method"), // Required
						// More values...
					},
					Quantity: aws.Int64(1), // Required
					CachedMethods: &cloudfront.CachedMethods{
						Items: []*string{ // Required
							aws.String("Method"), // Required
							// More values...
						},
						Quantity: aws.Int64(1), // Required
					},
				},
				Compress:        aws.Bool(true),
				DefaultTTL:      aws.Int64(1),
				MaxTTL:          aws.Int64(1),
				SmoothStreaming: aws.Bool(true),
			},
			Enabled: aws.Bool(true), // Required
			Origins: &cloudfront.Origins{ // Required
				Quantity: aws.Int64(1), // Required
				Items: []*cloudfront.Origin{
					{ // Required
						DomainName: aws.String("string"), // Required
						Id:         aws.String("string"), // Required
						CustomHeaders: &cloudfront.CustomHeaders{
							Quantity: aws.Int64(1), // Required
							Items: []*cloudfront.OriginCustomHeader{
								{ // Required
									HeaderName:  aws.String("string"), // Required
									HeaderValue: aws.String("string"), // Required
								},
								// More values...
							},
						},
						CustomOriginConfig: &cloudfront.CustomOriginConfig{
							HTTPPort:             aws.Int64(1),                       // Required
							HTTPSPort:            aws.Int64(1),                       // Required
							OriginProtocolPolicy: aws.String("OriginProtocolPolicy"), // Required
							OriginSslProtocols: &cloudfront.OriginSslProtocols{
								Items: []*string{ // Required
									aws.String("SslProtocol"), // Required
									// More values...
								},
								Quantity: aws.Int64(1), // Required
							},
						},
						OriginPath: aws.String("string"),
						S3OriginConfig: &cloudfront.S3OriginConfig{
							OriginAccessIdentity: aws.String("string"), // Required
						},
					},
					// More values...
				},
			},
			Aliases: &cloudfront.Aliases{
				Quantity: aws.Int64(1), // Required
				Items: []*string{
					aws.String("string"), // Required
					// More values...
				},
			},
			CacheBehaviors: &cloudfront.CacheBehaviors{
				Quantity: aws.Int64(1), // Required
				Items: []*cloudfront.CacheBehavior{
					{ // Required
						ForwardedValues: &cloudfront.ForwardedValues{ // Required
							Cookies: &cloudfront.CookiePreference{ // Required
								Forward: aws.String("ItemSelection"), // Required
								WhitelistedNames: &cloudfront.CookieNames{
									Quantity: aws.Int64(1), // Required
									Items: []*string{
										aws.String("string"), // Required
										// More values...
									},
								},
							},
							QueryString: aws.Bool(true), // Required
							Headers: &cloudfront.Headers{
								Quantity: aws.Int64(1), // Required
								Items: []*string{
									aws.String("string"), // Required
									// More values...
								},
							},
							QueryStringCacheKeys: &cloudfront.QueryStringCacheKeys{
								Quantity: aws.Int64(1), // Required
								Items: []*string{
									aws.String("string"), // Required
									// More values...
								},
							},
						},
						MinTTL:         aws.Int64(1),         // Required
						PathPattern:    aws.String("string"), // Required
						TargetOriginId: aws.String("string"), // Required
						TrustedSigners: &cloudfront.TrustedSigners{ // Required
							Enabled:  aws.Bool(true), // Required
							Quantity: aws.Int64(1),   // Required
							Items: []*string{
								aws.String("string"), // Required
								// More values...
							},
						},
						ViewerProtocolPolicy: aws.String("ViewerProtocolPolicy"), // Required
						AllowedMethods: &cloudfront.AllowedMethods{
							Items: []*string{ // Required
								aws.String("Method"), // Required
								// More values...
							},
							Quantity: aws.Int64(1), // Required
							CachedMethods: &cloudfront.CachedMethods{
								Items: []*string{ // Required
									aws.String("Method"), // Required
									// More values...
								},
								Quantity: aws.Int64(1), // Required
							},
						},
						Compress:        aws.Bool(true),
						DefaultTTL:      aws.Int64(1),
						MaxTTL:          aws.Int64(1),
						SmoothStreaming: aws.Bool(true),
					},
					// More values...
				},
			},
			CustomErrorResponses: &cloudfront.CustomErrorResponses{
				Quantity: aws.Int64(1), // Required
				Items: []*cloudfront.CustomErrorResponse{
					{ // Required
						ErrorCode:          aws.Int64(1), // Required
						ErrorCachingMinTTL: aws.Int64(1),
						ResponseCode:       aws.String("string"),
						ResponsePagePath:   aws.String("string"),
					},
					// More values...
				},
			},
			DefaultRootObject: aws.String("string"),
			HttpVersion:       aws.String("HttpVersion"),
			Logging: &cloudfront.LoggingConfig{
				Bucket:         aws.String("string"), // Required
				Enabled:        aws.Bool(true),       // Required
				IncludeCookies: aws.Bool(true),       // Required
				Prefix:         aws.String("string"), // Required
			},
			PriceClass: aws.String("PriceClass"),
			Restrictions: &cloudfront.Restrictions{
				GeoRestriction: &cloudfront.GeoRestriction{ // Required
					Quantity:        aws.Int64(1),                     // Required
					RestrictionType: aws.String("GeoRestrictionType"), // Required
					Items: []*string{
						aws.String("string"), // Required
						// More values...
					},
				},
			},
			ViewerCertificate: &cloudfront.ViewerCertificate{
				ACMCertificateArn:            aws.String("string"),
				Certificate:                  aws.String("string"),
				CertificateSource:            aws.String("CertificateSource"),
				CloudFrontDefaultCertificate: aws.Bool(true),
				IAMCertificateId:             aws.String("string"),
				MinimumProtocolVersion:       aws.String("MinimumProtocolVersion"),
				SSLSupportMethod:             aws.String("SSLSupportMethod"),
			},
			WebACLId: aws.String("string"),
		},
	}
	resp, err := svc.CreateDistribution(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*CloudFront) CreateDistributionRequest

func (c *CloudFront) CreateDistributionRequest(input *CreateDistributionInput) (req *request.Request, output *CreateDistributionOutput)

CreateDistributionRequest generates a "aws/request.Request" representing the client's request for the CreateDistribution operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the CreateDistribution method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// 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)
}

func (*CloudFront) CreateDistributionWithTags

func (c *CloudFront) CreateDistributionWithTags(input *CreateDistributionWithTagsInput) (*CreateDistributionWithTagsOutput, error)

Create a new distribution with tags.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/cloudfront"
)

func main() {
	sess, err := session.NewSession()
	if err != nil {
		fmt.Println("failed to create session,", err)
		return
	}

	svc := cloudfront.New(sess)

	params := &cloudfront.CreateDistributionWithTagsInput{
		DistributionConfigWithTags: &cloudfront.DistributionConfigWithTags{ // Required
			DistributionConfig: &cloudfront.DistributionConfig{ // Required
				CallerReference: aws.String("string"), // Required
				Comment:         aws.String("string"), // Required
				DefaultCacheBehavior: &cloudfront.DefaultCacheBehavior{ // Required
					ForwardedValues: &cloudfront.ForwardedValues{ // Required
						Cookies: &cloudfront.CookiePreference{ // Required
							Forward: aws.String("ItemSelection"), // Required
							WhitelistedNames: &cloudfront.CookieNames{
								Quantity: aws.Int64(1), // Required
								Items: []*string{
									aws.String("string"), // Required
									// More values...
								},
							},
						},
						QueryString: aws.Bool(true), // Required
						Headers: &cloudfront.Headers{
							Quantity: aws.Int64(1), // Required
							Items: []*string{
								aws.String("string"), // Required
								// More values...
							},
						},
						QueryStringCacheKeys: &cloudfront.QueryStringCacheKeys{
							Quantity: aws.Int64(1), // Required
							Items: []*string{
								aws.String("string"), // Required
								// More values...
							},
						},
					},
					MinTTL:         aws.Int64(1),         // Required
					TargetOriginId: aws.String("string"), // Required
					TrustedSigners: &cloudfront.TrustedSigners{ // Required
						Enabled:  aws.Bool(true), // Required
						Quantity: aws.Int64(1),   // Required
						Items: []*string{
							aws.String("string"), // Required
							// More values...
						},
					},
					ViewerProtocolPolicy: aws.String("ViewerProtocolPolicy"), // Required
					AllowedMethods: &cloudfront.AllowedMethods{
						Items: []*string{ // Required
							aws.String("Method"), // Required
							// More values...
						},
						Quantity: aws.Int64(1), // Required
						CachedMethods: &cloudfront.CachedMethods{
							Items: []*string{ // Required
								aws.String("Method"), // Required
								// More values...
							},
							Quantity: aws.Int64(1), // Required
						},
					},
					Compress:        aws.Bool(true),
					DefaultTTL:      aws.Int64(1),
					MaxTTL:          aws.Int64(1),
					SmoothStreaming: aws.Bool(true),
				},
				Enabled: aws.Bool(true), // Required
				Origins: &cloudfront.Origins{ // Required
					Quantity: aws.Int64(1), // Required
					Items: []*cloudfront.Origin{
						{ // Required
							DomainName: aws.String("string"), // Required
							Id:         aws.String("string"), // Required
							CustomHeaders: &cloudfront.CustomHeaders{
								Quantity: aws.Int64(1), // Required
								Items: []*cloudfront.OriginCustomHeader{
									{ // Required
										HeaderName:  aws.String("string"), // Required
										HeaderValue: aws.String("string"), // Required
									},
									// More values...
								},
							},
							CustomOriginConfig: &cloudfront.CustomOriginConfig{
								HTTPPort:             aws.Int64(1),                       // Required
								HTTPSPort:            aws.Int64(1),                       // Required
								OriginProtocolPolicy: aws.String("OriginProtocolPolicy"), // Required
								OriginSslProtocols: &cloudfront.OriginSslProtocols{
									Items: []*string{ // Required
										aws.String("SslProtocol"), // Required
										// More values...
									},
									Quantity: aws.Int64(1), // Required
								},
							},
							OriginPath: aws.String("string"),
							S3OriginConfig: &cloudfront.S3OriginConfig{
								OriginAccessIdentity: aws.String("string"), // Required
							},
						},
						// More values...
					},
				},
				Aliases: &cloudfront.Aliases{
					Quantity: aws.Int64(1), // Required
					Items: []*string{
						aws.String("string"), // Required
						// More values...
					},
				},
				CacheBehaviors: &cloudfront.CacheBehaviors{
					Quantity: aws.Int64(1), // Required
					Items: []*cloudfront.CacheBehavior{
						{ // Required
							ForwardedValues: &cloudfront.ForwardedValues{ // Required
								Cookies: &cloudfront.CookiePreference{ // Required
									Forward: aws.String("ItemSelection"), // Required
									WhitelistedNames: &cloudfront.CookieNames{
										Quantity: aws.Int64(1), // Required
										Items: []*string{
											aws.String("string"), // Required
											// More values...
										},
									},
								},
								QueryString: aws.Bool(true), // Required
								Headers: &cloudfront.Headers{
									Quantity: aws.Int64(1), // Required
									Items: []*string{
										aws.String("string"), // Required
										// More values...
									},
								},
								QueryStringCacheKeys: &cloudfront.QueryStringCacheKeys{
									Quantity: aws.Int64(1), // Required
									Items: []*string{
										aws.String("string"), // Required
										// More values...
									},
								},
							},
							MinTTL:         aws.Int64(1),         // Required
							PathPattern:    aws.String("string"), // Required
							TargetOriginId: aws.String("string"), // Required
							TrustedSigners: &cloudfront.TrustedSigners{ // Required
								Enabled:  aws.Bool(true), // Required
								Quantity: aws.Int64(1),   // Required
								Items: []*string{
									aws.String("string"), // Required
									// More values...
								},
							},
							ViewerProtocolPolicy: aws.String("ViewerProtocolPolicy"), // Required
							AllowedMethods: &cloudfront.AllowedMethods{
								Items: []*string{ // Required
									aws.String("Method"), // Required
									// More values...
								},
								Quantity: aws.Int64(1), // Required
								CachedMethods: &cloudfront.CachedMethods{
									Items: []*string{ // Required
										aws.String("Method"), // Required
										// More values...
									},
									Quantity: aws.Int64(1), // Required
								},
							},
							Compress:        aws.Bool(true),
							DefaultTTL:      aws.Int64(1),
							MaxTTL:          aws.Int64(1),
							SmoothStreaming: aws.Bool(true),
						},
						// More values...
					},
				},
				CustomErrorResponses: &cloudfront.CustomErrorResponses{
					Quantity: aws.Int64(1), // Required
					Items: []*cloudfront.CustomErrorResponse{
						{ // Required
							ErrorCode:          aws.Int64(1), // Required
							ErrorCachingMinTTL: aws.Int64(1),
							ResponseCode:       aws.String("string"),
							ResponsePagePath:   aws.String("string"),
						},
						// More values...
					},
				},
				DefaultRootObject: aws.String("string"),
				HttpVersion:       aws.String("HttpVersion"),
				Logging: &cloudfront.LoggingConfig{
					Bucket:         aws.String("string"), // Required
					Enabled:        aws.Bool(true),       // Required
					IncludeCookies: aws.Bool(true),       // Required
					Prefix:         aws.String("string"), // Required
				},
				PriceClass: aws.String("PriceClass"),
				Restrictions: &cloudfront.Restrictions{
					GeoRestriction: &cloudfront.GeoRestriction{ // Required
						Quantity:        aws.Int64(1),                     // Required
						RestrictionType: aws.String("GeoRestrictionType"), // Required
						Items: []*string{
							aws.String("string"), // Required
							// More values...
						},
					},
				},
				ViewerCertificate: &cloudfront.ViewerCertificate{
					ACMCertificateArn:            aws.String("string"),
					Certificate:                  aws.String("string"),
					CertificateSource:            aws.String("CertificateSource"),
					CloudFrontDefaultCertificate: aws.Bool(true),
					IAMCertificateId:             aws.String("string"),
					MinimumProtocolVersion:       aws.String("MinimumProtocolVersion"),
					SSLSupportMethod:             aws.String("SSLSupportMethod"),
				},
				WebACLId: aws.String("string"),
			},
			Tags: &cloudfront.Tags{ // Required
				Items: []*cloudfront.Tag{
					{ // Required
						Key:   aws.String("TagKey"), // Required
						Value: aws.String("TagValue"),
					},
					// More values...
				},
			},
		},
	}
	resp, err := svc.CreateDistributionWithTags(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*CloudFront) CreateDistributionWithTagsRequest

func (c *CloudFront) CreateDistributionWithTagsRequest(input *CreateDistributionWithTagsInput) (req *request.Request, output *CreateDistributionWithTagsOutput)

CreateDistributionWithTagsRequest generates a "aws/request.Request" representing the client's request for the CreateDistributionWithTags operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the CreateDistributionWithTags method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// 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)
}

func (*CloudFront) CreateInvalidation

func (c *CloudFront) CreateInvalidation(input *CreateInvalidationInput) (*CreateInvalidationOutput, error)

Create a new invalidation.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/cloudfront"
)

func main() {
	sess, err := session.NewSession()
	if err != nil {
		fmt.Println("failed to create session,", err)
		return
	}

	svc := cloudfront.New(sess)

	params := &cloudfront.CreateInvalidationInput{
		DistributionId: aws.String("string"), // Required
		InvalidationBatch: &cloudfront.InvalidationBatch{ // Required
			CallerReference: aws.String("string"), // Required
			Paths: &cloudfront.Paths{ // Required
				Quantity: aws.Int64(1), // Required
				Items: []*string{
					aws.String("string"), // Required
					// More values...
				},
			},
		},
	}
	resp, err := svc.CreateInvalidation(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*CloudFront) CreateInvalidationRequest

func (c *CloudFront) CreateInvalidationRequest(input *CreateInvalidationInput) (req *request.Request, output *CreateInvalidationOutput)

CreateInvalidationRequest generates a "aws/request.Request" representing the client's request for the CreateInvalidation operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the CreateInvalidation method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// 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)
}

func (*CloudFront) CreateStreamingDistribution

func (c *CloudFront) CreateStreamingDistribution(input *CreateStreamingDistributionInput) (*CreateStreamingDistributionOutput, error)

Create a new streaming distribution.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/cloudfront"
)

func main() {
	sess, err := session.NewSession()
	if err != nil {
		fmt.Println("failed to create session,", err)
		return
	}

	svc := cloudfront.New(sess)

	params := &cloudfront.CreateStreamingDistributionInput{
		StreamingDistributionConfig: &cloudfront.StreamingDistributionConfig{ // Required
			CallerReference: aws.String("string"), // Required
			Comment:         aws.String("string"), // Required
			Enabled:         aws.Bool(true),       // Required
			S3Origin: &cloudfront.S3Origin{ // Required
				DomainName:           aws.String("string"), // Required
				OriginAccessIdentity: aws.String("string"), // Required
			},
			TrustedSigners: &cloudfront.TrustedSigners{ // Required
				Enabled:  aws.Bool(true), // Required
				Quantity: aws.Int64(1),   // Required
				Items: []*string{
					aws.String("string"), // Required
					// More values...
				},
			},
			Aliases: &cloudfront.Aliases{
				Quantity: aws.Int64(1), // Required
				Items: []*string{
					aws.String("string"), // Required
					// More values...
				},
			},
			Logging: &cloudfront.StreamingLoggingConfig{
				Bucket:  aws.String("string"), // Required
				Enabled: aws.Bool(true),       // Required
				Prefix:  aws.String("string"), // Required
			},
			PriceClass: aws.String("PriceClass"),
		},
	}
	resp, err := svc.CreateStreamingDistribution(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*CloudFront) CreateStreamingDistributionRequest

func (c *CloudFront) CreateStreamingDistributionRequest(input *CreateStreamingDistributionInput) (req *request.Request, output *CreateStreamingDistributionOutput)

CreateStreamingDistributionRequest generates a "aws/request.Request" representing the client's request for the CreateStreamingDistribution operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the CreateStreamingDistribution method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// 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)
}

func (*CloudFront) CreateStreamingDistributionWithTags

Create a new streaming distribution with tags.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/cloudfront"
)

func main() {
	sess, err := session.NewSession()
	if err != nil {
		fmt.Println("failed to create session,", err)
		return
	}

	svc := cloudfront.New(sess)

	params := &cloudfront.CreateStreamingDistributionWithTagsInput{
		StreamingDistributionConfigWithTags: &cloudfront.StreamingDistributionConfigWithTags{ // Required
			StreamingDistributionConfig: &cloudfront.StreamingDistributionConfig{ // Required
				CallerReference: aws.String("string"), // Required
				Comment:         aws.String("string"), // Required
				Enabled:         aws.Bool(true),       // Required
				S3Origin: &cloudfront.S3Origin{ // Required
					DomainName:           aws.String("string"), // Required
					OriginAccessIdentity: aws.String("string"), // Required
				},
				TrustedSigners: &cloudfront.TrustedSigners{ // Required
					Enabled:  aws.Bool(true), // Required
					Quantity: aws.Int64(1),   // Required
					Items: []*string{
						aws.String("string"), // Required
						// More values...
					},
				},
				Aliases: &cloudfront.Aliases{
					Quantity: aws.Int64(1), // Required
					Items: []*string{
						aws.String("string"), // Required
						// More values...
					},
				},
				Logging: &cloudfront.StreamingLoggingConfig{
					Bucket:  aws.String("string"), // Required
					Enabled: aws.Bool(true),       // Required
					Prefix:  aws.String("string"), // Required
				},
				PriceClass: aws.String("PriceClass"),
			},
			Tags: &cloudfront.Tags{ // Required
				Items: []*cloudfront.Tag{
					{ // Required
						Key:   aws.String("TagKey"), // Required
						Value: aws.String("TagValue"),
					},
					// More values...
				},
			},
		},
	}
	resp, err := svc.CreateStreamingDistributionWithTags(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*CloudFront) CreateStreamingDistributionWithTagsRequest

func (c *CloudFront) CreateStreamingDistributionWithTagsRequest(input *CreateStreamingDistributionWithTagsInput) (req *request.Request, output *CreateStreamingDistributionWithTagsOutput)

CreateStreamingDistributionWithTagsRequest generates a "aws/request.Request" representing the client's request for the CreateStreamingDistributionWithTags operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the CreateStreamingDistributionWithTags method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// 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)
}

func (*CloudFront) DeleteCloudFrontOriginAccessIdentity

Delete an origin access identity.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/cloudfront"
)

func main() {
	sess, err := session.NewSession()
	if err != nil {
		fmt.Println("failed to create session,", err)
		return
	}

	svc := cloudfront.New(sess)

	params := &cloudfront.DeleteCloudFrontOriginAccessIdentityInput{
		Id:      aws.String("string"), // Required
		IfMatch: aws.String("string"),
	}
	resp, err := svc.DeleteCloudFrontOriginAccessIdentity(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*CloudFront) DeleteCloudFrontOriginAccessIdentityRequest

func (c *CloudFront) DeleteCloudFrontOriginAccessIdentityRequest(input *DeleteCloudFrontOriginAccessIdentityInput) (req *request.Request, output *DeleteCloudFrontOriginAccessIdentityOutput)

DeleteCloudFrontOriginAccessIdentityRequest generates a "aws/request.Request" representing the client's request for the DeleteCloudFrontOriginAccessIdentity operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the DeleteCloudFrontOriginAccessIdentity method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// 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)
}

func (*CloudFront) DeleteDistribution

func (c *CloudFront) DeleteDistribution(input *DeleteDistributionInput) (*DeleteDistributionOutput, error)

Delete a distribution.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/cloudfront"
)

func main() {
	sess, err := session.NewSession()
	if err != nil {
		fmt.Println("failed to create session,", err)
		return
	}

	svc := cloudfront.New(sess)

	params := &cloudfront.DeleteDistributionInput{
		Id:      aws.String("string"), // Required
		IfMatch: aws.String("string"),
	}
	resp, err := svc.DeleteDistribution(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*CloudFront) DeleteDistributionRequest

func (c *CloudFront) DeleteDistributionRequest(input *DeleteDistributionInput) (req *request.Request, output *DeleteDistributionOutput)

DeleteDistributionRequest generates a "aws/request.Request" representing the client's request for the DeleteDistribution operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the DeleteDistribution method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// 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)
}

func (*CloudFront) DeleteStreamingDistribution

func (c *CloudFront) DeleteStreamingDistribution(input *DeleteStreamingDistributionInput) (*DeleteStreamingDistributionOutput, error)

Delete a streaming distribution.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/cloudfront"
)

func main() {
	sess, err := session.NewSession()
	if err != nil {
		fmt.Println("failed to create session,", err)
		return
	}

	svc := cloudfront.New(sess)

	params := &cloudfront.DeleteStreamingDistributionInput{
		Id:      aws.String("string"), // Required
		IfMatch: aws.String("string"),
	}
	resp, err := svc.DeleteStreamingDistribution(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*CloudFront) DeleteStreamingDistributionRequest

func (c *CloudFront) DeleteStreamingDistributionRequest(input *DeleteStreamingDistributionInput) (req *request.Request, output *DeleteStreamingDistributionOutput)

DeleteStreamingDistributionRequest generates a "aws/request.Request" representing the client's request for the DeleteStreamingDistribution operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the DeleteStreamingDistribution method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// 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)
}

func (*CloudFront) GetCloudFrontOriginAccessIdentity

Get the information about an origin access identity.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/cloudfront"
)

func main() {
	sess, err := session.NewSession()
	if err != nil {
		fmt.Println("failed to create session,", err)
		return
	}

	svc := cloudfront.New(sess)

	params := &cloudfront.GetCloudFrontOriginAccessIdentityInput{
		Id: aws.String("string"), // Required
	}
	resp, err := svc.GetCloudFrontOriginAccessIdentity(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*CloudFront) GetCloudFrontOriginAccessIdentityConfig

Get the configuration information about an origin access identity.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/cloudfront"
)

func main() {
	sess, err := session.NewSession()
	if err != nil {
		fmt.Println("failed to create session,", err)
		return
	}

	svc := cloudfront.New(sess)

	params := &cloudfront.GetCloudFrontOriginAccessIdentityConfigInput{
		Id: aws.String("string"), // Required
	}
	resp, err := svc.GetCloudFrontOriginAccessIdentityConfig(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*CloudFront) GetCloudFrontOriginAccessIdentityConfigRequest

func (c *CloudFront) GetCloudFrontOriginAccessIdentityConfigRequest(input *GetCloudFrontOriginAccessIdentityConfigInput) (req *request.Request, output *GetCloudFrontOriginAccessIdentityConfigOutput)

GetCloudFrontOriginAccessIdentityConfigRequest generates a "aws/request.Request" representing the client's request for the GetCloudFrontOriginAccessIdentityConfig operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the GetCloudFrontOriginAccessIdentityConfig method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// 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)
}

func (*CloudFront) GetCloudFrontOriginAccessIdentityRequest

func (c *CloudFront) GetCloudFrontOriginAccessIdentityRequest(input *GetCloudFrontOriginAccessIdentityInput) (req *request.Request, output *GetCloudFrontOriginAccessIdentityOutput)

GetCloudFrontOriginAccessIdentityRequest generates a "aws/request.Request" representing the client's request for the GetCloudFrontOriginAccessIdentity operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the GetCloudFrontOriginAccessIdentity method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// 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)
}

func (*CloudFront) GetDistribution

func (c *CloudFront) GetDistribution(input *GetDistributionInput) (*GetDistributionOutput, error)

Get the information about a distribution.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/cloudfront"
)

func main() {
	sess, err := session.NewSession()
	if err != nil {
		fmt.Println("failed to create session,", err)
		return
	}

	svc := cloudfront.New(sess)

	params := &cloudfront.GetDistributionInput{
		Id: aws.String("string"), // Required
	}
	resp, err := svc.GetDistribution(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*CloudFront) GetDistributionConfig

func (c *CloudFront) GetDistributionConfig(input *GetDistributionConfigInput) (*GetDistributionConfigOutput, error)

Get the configuration information about a distribution.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/cloudfront"
)

func main() {
	sess, err := session.NewSession()
	if err != nil {
		fmt.Println("failed to create session,", err)
		return
	}

	svc := cloudfront.New(sess)

	params := &cloudfront.GetDistributionConfigInput{
		Id: aws.String("string"), // Required
	}
	resp, err := svc.GetDistributionConfig(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*CloudFront) GetDistributionConfigRequest

func (c *CloudFront) GetDistributionConfigRequest(input *GetDistributionConfigInput) (req *request.Request, output *GetDistributionConfigOutput)

GetDistributionConfigRequest generates a "aws/request.Request" representing the client's request for the GetDistributionConfig operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the GetDistributionConfig method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// 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)
}

func (*CloudFront) GetDistributionRequest

func (c *CloudFront) GetDistributionRequest(input *GetDistributionInput) (req *request.Request, output *GetDistributionOutput)

GetDistributionRequest generates a "aws/request.Request" representing the client's request for the GetDistribution operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the GetDistribution method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// 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)
}

func (*CloudFront) GetInvalidation

func (c *CloudFront) GetInvalidation(input *GetInvalidationInput) (*GetInvalidationOutput, error)

Get the information about an invalidation.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/cloudfront"
)

func main() {
	sess, err := session.NewSession()
	if err != nil {
		fmt.Println("failed to create session,", err)
		return
	}

	svc := cloudfront.New(sess)

	params := &cloudfront.GetInvalidationInput{
		DistributionId: aws.String("string"), // Required
		Id:             aws.String("string"), // Required
	}
	resp, err := svc.GetInvalidation(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*CloudFront) GetInvalidationRequest

func (c *CloudFront) GetInvalidationRequest(input *GetInvalidationInput) (req *request.Request, output *GetInvalidationOutput)

GetInvalidationRequest generates a "aws/request.Request" representing the client's request for the GetInvalidation operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the GetInvalidation method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// 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)
}

func (*CloudFront) GetStreamingDistribution

func (c *CloudFront) GetStreamingDistribution(input *GetStreamingDistributionInput) (*GetStreamingDistributionOutput, error)

Get the information about a streaming distribution.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/cloudfront"
)

func main() {
	sess, err := session.NewSession()
	if err != nil {
		fmt.Println("failed to create session,", err)
		return
	}

	svc := cloudfront.New(sess)

	params := &cloudfront.GetStreamingDistributionInput{
		Id: aws.String("string"), // Required
	}
	resp, err := svc.GetStreamingDistribution(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*CloudFront) GetStreamingDistributionConfig

func (c *CloudFront) GetStreamingDistributionConfig(input *GetStreamingDistributionConfigInput) (*GetStreamingDistributionConfigOutput, error)

Get the configuration information about a streaming distribution.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/cloudfront"
)

func main() {
	sess, err := session.NewSession()
	if err != nil {
		fmt.Println("failed to create session,", err)
		return
	}

	svc := cloudfront.New(sess)

	params := &cloudfront.GetStreamingDistributionConfigInput{
		Id: aws.String("string"), // Required
	}
	resp, err := svc.GetStreamingDistributionConfig(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*CloudFront) GetStreamingDistributionConfigRequest

func (c *CloudFront) GetStreamingDistributionConfigRequest(input *GetStreamingDistributionConfigInput) (req *request.Request, output *GetStreamingDistributionConfigOutput)

GetStreamingDistributionConfigRequest generates a "aws/request.Request" representing the client's request for the GetStreamingDistributionConfig operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the GetStreamingDistributionConfig method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// 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)
}

func (*CloudFront) GetStreamingDistributionRequest

func (c *CloudFront) GetStreamingDistributionRequest(input *GetStreamingDistributionInput) (req *request.Request, output *GetStreamingDistributionOutput)

GetStreamingDistributionRequest generates a "aws/request.Request" representing the client's request for the GetStreamingDistribution operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the GetStreamingDistribution method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// 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)
}

func (*CloudFront) ListCloudFrontOriginAccessIdentities

List origin access identities.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/cloudfront"
)

func main() {
	sess, err := session.NewSession()
	if err != nil {
		fmt.Println("failed to create session,", err)
		return
	}

	svc := cloudfront.New(sess)

	params := &cloudfront.ListCloudFrontOriginAccessIdentitiesInput{
		Marker:   aws.String("string"),
		MaxItems: aws.Int64(1),
	}
	resp, err := svc.ListCloudFrontOriginAccessIdentities(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*CloudFront) ListCloudFrontOriginAccessIdentitiesPages

func (c *CloudFront) ListCloudFrontOriginAccessIdentitiesPages(input *ListCloudFrontOriginAccessIdentitiesInput, fn func(p *ListCloudFrontOriginAccessIdentitiesOutput, lastPage bool) (shouldContinue bool)) error

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 (*CloudFront) ListCloudFrontOriginAccessIdentitiesRequest

func (c *CloudFront) ListCloudFrontOriginAccessIdentitiesRequest(input *ListCloudFrontOriginAccessIdentitiesInput) (req *request.Request, output *ListCloudFrontOriginAccessIdentitiesOutput)

ListCloudFrontOriginAccessIdentitiesRequest generates a "aws/request.Request" representing the client's request for the ListCloudFrontOriginAccessIdentities operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the ListCloudFrontOriginAccessIdentities method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// 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)
}

func (*CloudFront) ListDistributions

func (c *CloudFront) ListDistributions(input *ListDistributionsInput) (*ListDistributionsOutput, error)

List distributions.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/cloudfront"
)

func main() {
	sess, err := session.NewSession()
	if err != nil {
		fmt.Println("failed to create session,", err)
		return
	}

	svc := cloudfront.New(sess)

	params := &cloudfront.ListDistributionsInput{
		Marker:   aws.String("string"),
		MaxItems: aws.Int64(1),
	}
	resp, err := svc.ListDistributions(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*CloudFront) ListDistributionsByWebACLId

func (c *CloudFront) ListDistributionsByWebACLId(input *ListDistributionsByWebACLIdInput) (*ListDistributionsByWebACLIdOutput, error)

List the distributions that are associated with a specified AWS WAF web ACL.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/cloudfront"
)

func main() {
	sess, err := session.NewSession()
	if err != nil {
		fmt.Println("failed to create session,", err)
		return
	}

	svc := cloudfront.New(sess)

	params := &cloudfront.ListDistributionsByWebACLIdInput{
		WebACLId: aws.String("string"), // Required
		Marker:   aws.String("string"),
		MaxItems: aws.Int64(1),
	}
	resp, err := svc.ListDistributionsByWebACLId(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*CloudFront) ListDistributionsByWebACLIdRequest

func (c *CloudFront) ListDistributionsByWebACLIdRequest(input *ListDistributionsByWebACLIdInput) (req *request.Request, output *ListDistributionsByWebACLIdOutput)

ListDistributionsByWebACLIdRequest generates a "aws/request.Request" representing the client's request for the ListDistributionsByWebACLId operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the ListDistributionsByWebACLId method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// 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)
}

func (*CloudFront) ListDistributionsPages

func (c *CloudFront) ListDistributionsPages(input *ListDistributionsInput, fn func(p *ListDistributionsOutput, lastPage bool) (shouldContinue bool)) error

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 (*CloudFront) ListDistributionsRequest

func (c *CloudFront) ListDistributionsRequest(input *ListDistributionsInput) (req *request.Request, output *ListDistributionsOutput)

ListDistributionsRequest generates a "aws/request.Request" representing the client's request for the ListDistributions operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the ListDistributions method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// 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)
}

func (*CloudFront) ListInvalidations

func (c *CloudFront) ListInvalidations(input *ListInvalidationsInput) (*ListInvalidationsOutput, error)

List invalidation batches.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/cloudfront"
)

func main() {
	sess, err := session.NewSession()
	if err != nil {
		fmt.Println("failed to create session,", err)
		return
	}

	svc := cloudfront.New(sess)

	params := &cloudfront.ListInvalidationsInput{
		DistributionId: aws.String("string"), // Required
		Marker:         aws.String("string"),
		MaxItems:       aws.Int64(1),
	}
	resp, err := svc.ListInvalidations(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*CloudFront) ListInvalidationsPages

func (c *CloudFront) ListInvalidationsPages(input *ListInvalidationsInput, fn func(p *ListInvalidationsOutput, lastPage bool) (shouldContinue bool)) error

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 (*CloudFront) ListInvalidationsRequest

func (c *CloudFront) ListInvalidationsRequest(input *ListInvalidationsInput) (req *request.Request, output *ListInvalidationsOutput)

ListInvalidationsRequest generates a "aws/request.Request" representing the client's request for the ListInvalidations operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the ListInvalidations method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// 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)
}

func (*CloudFront) ListStreamingDistributions

func (c *CloudFront) ListStreamingDistributions(input *ListStreamingDistributionsInput) (*ListStreamingDistributionsOutput, error)

List streaming distributions.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/cloudfront"
)

func main() {
	sess, err := session.NewSession()
	if err != nil {
		fmt.Println("failed to create session,", err)
		return
	}

	svc := cloudfront.New(sess)

	params := &cloudfront.ListStreamingDistributionsInput{
		Marker:   aws.String("string"),
		MaxItems: aws.Int64(1),
	}
	resp, err := svc.ListStreamingDistributions(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*CloudFront) ListStreamingDistributionsPages

func (c *CloudFront) ListStreamingDistributionsPages(input *ListStreamingDistributionsInput, fn func(p *ListStreamingDistributionsOutput, lastPage bool) (shouldContinue bool)) error

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 (*CloudFront) ListStreamingDistributionsRequest

func (c *CloudFront) ListStreamingDistributionsRequest(input *ListStreamingDistributionsInput) (req *request.Request, output *ListStreamingDistributionsOutput)

ListStreamingDistributionsRequest generates a "aws/request.Request" representing the client's request for the ListStreamingDistributions operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the ListStreamingDistributions method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// 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)
}

func (*CloudFront) ListTagsForResource

func (c *CloudFront) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error)

List tags for a CloudFront resource.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/cloudfront"
)

func main() {
	sess, err := session.NewSession()
	if err != nil {
		fmt.Println("failed to create session,", err)
		return
	}

	svc := cloudfront.New(sess)

	params := &cloudfront.ListTagsForResourceInput{
		Resource: aws.String("ResourceARN"), // Required
	}
	resp, err := svc.ListTagsForResource(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*CloudFront) ListTagsForResourceRequest

func (c *CloudFront) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput)

ListTagsForResourceRequest generates a "aws/request.Request" representing the client's request for the ListTagsForResource operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the ListTagsForResource method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// 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)
}

func (*CloudFront) TagResource

func (c *CloudFront) TagResource(input *TagResourceInput) (*TagResourceOutput, error)

Add tags to a CloudFront resource.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/cloudfront"
)

func main() {
	sess, err := session.NewSession()
	if err != nil {
		fmt.Println("failed to create session,", err)
		return
	}

	svc := cloudfront.New(sess)

	params := &cloudfront.TagResourceInput{
		Resource: aws.String("ResourceARN"), // Required
		Tags: &cloudfront.Tags{ // Required
			Items: []*cloudfront.Tag{
				{ // Required
					Key:   aws.String("TagKey"), // Required
					Value: aws.String("TagValue"),
				},
				// More values...
			},
		},
	}
	resp, err := svc.TagResource(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*CloudFront) TagResourceRequest

func (c *CloudFront) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput)

TagResourceRequest generates a "aws/request.Request" representing the client's request for the TagResource operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the TagResource method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// 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)
}

func (*CloudFront) UntagResource

func (c *CloudFront) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error)

Remove tags from a CloudFront resource.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/cloudfront"
)

func main() {
	sess, err := session.NewSession()
	if err != nil {
		fmt.Println("failed to create session,", err)
		return
	}

	svc := cloudfront.New(sess)

	params := &cloudfront.UntagResourceInput{
		Resource: aws.String("ResourceARN"), // Required
		TagKeys: &cloudfront.TagKeys{ // Required
			Items: []*string{
				aws.String("TagKey"), // Required
				// More values...
			},
		},
	}
	resp, err := svc.UntagResource(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*CloudFront) UntagResourceRequest

func (c *CloudFront) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput)

UntagResourceRequest generates a "aws/request.Request" representing the client's request for the UntagResource operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the UntagResource method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// 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)
}

func (*CloudFront) UpdateCloudFrontOriginAccessIdentity

Update an origin access identity.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/cloudfront"
)

func main() {
	sess, err := session.NewSession()
	if err != nil {
		fmt.Println("failed to create session,", err)
		return
	}

	svc := cloudfront.New(sess)

	params := &cloudfront.UpdateCloudFrontOriginAccessIdentityInput{
		CloudFrontOriginAccessIdentityConfig: &cloudfront.OriginAccessIdentityConfig{ // Required
			CallerReference: aws.String("string"), // Required
			Comment:         aws.String("string"), // Required
		},
		Id:      aws.String("string"), // Required
		IfMatch: aws.String("string"),
	}
	resp, err := svc.UpdateCloudFrontOriginAccessIdentity(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*CloudFront) UpdateCloudFrontOriginAccessIdentityRequest

func (c *CloudFront) UpdateCloudFrontOriginAccessIdentityRequest(input *UpdateCloudFrontOriginAccessIdentityInput) (req *request.Request, output *UpdateCloudFrontOriginAccessIdentityOutput)

UpdateCloudFrontOriginAccessIdentityRequest generates a "aws/request.Request" representing the client's request for the UpdateCloudFrontOriginAccessIdentity operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the UpdateCloudFrontOriginAccessIdentity method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// 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)
}

func (*CloudFront) UpdateDistribution

func (c *CloudFront) UpdateDistribution(input *UpdateDistributionInput) (*UpdateDistributionOutput, error)

Update a distribution.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/cloudfront"
)

func main() {
	sess, err := session.NewSession()
	if err != nil {
		fmt.Println("failed to create session,", err)
		return
	}

	svc := cloudfront.New(sess)

	params := &cloudfront.UpdateDistributionInput{
		DistributionConfig: &cloudfront.DistributionConfig{ // Required
			CallerReference: aws.String("string"), // Required
			Comment:         aws.String("string"), // Required
			DefaultCacheBehavior: &cloudfront.DefaultCacheBehavior{ // Required
				ForwardedValues: &cloudfront.ForwardedValues{ // Required
					Cookies: &cloudfront.CookiePreference{ // Required
						Forward: aws.String("ItemSelection"), // Required
						WhitelistedNames: &cloudfront.CookieNames{
							Quantity: aws.Int64(1), // Required
							Items: []*string{
								aws.String("string"), // Required
								// More values...
							},
						},
					},
					QueryString: aws.Bool(true), // Required
					Headers: &cloudfront.Headers{
						Quantity: aws.Int64(1), // Required
						Items: []*string{
							aws.String("string"), // Required
							// More values...
						},
					},
					QueryStringCacheKeys: &cloudfront.QueryStringCacheKeys{
						Quantity: aws.Int64(1), // Required
						Items: []*string{
							aws.String("string"), // Required
							// More values...
						},
					},
				},
				MinTTL:         aws.Int64(1),         // Required
				TargetOriginId: aws.String("string"), // Required
				TrustedSigners: &cloudfront.TrustedSigners{ // Required
					Enabled:  aws.Bool(true), // Required
					Quantity: aws.Int64(1),   // Required
					Items: []*string{
						aws.String("string"), // Required
						// More values...
					},
				},
				ViewerProtocolPolicy: aws.String("ViewerProtocolPolicy"), // Required
				AllowedMethods: &cloudfront.AllowedMethods{
					Items: []*string{ // Required
						aws.String("Method"), // Required
						// More values...
					},
					Quantity: aws.Int64(1), // Required
					CachedMethods: &cloudfront.CachedMethods{
						Items: []*string{ // Required
							aws.String("Method"), // Required
							// More values...
						},
						Quantity: aws.Int64(1), // Required
					},
				},
				Compress:        aws.Bool(true),
				DefaultTTL:      aws.Int64(1),
				MaxTTL:          aws.Int64(1),
				SmoothStreaming: aws.Bool(true),
			},
			Enabled: aws.Bool(true), // Required
			Origins: &cloudfront.Origins{ // Required
				Quantity: aws.Int64(1), // Required
				Items: []*cloudfront.Origin{
					{ // Required
						DomainName: aws.String("string"), // Required
						Id:         aws.String("string"), // Required
						CustomHeaders: &cloudfront.CustomHeaders{
							Quantity: aws.Int64(1), // Required
							Items: []*cloudfront.OriginCustomHeader{
								{ // Required
									HeaderName:  aws.String("string"), // Required
									HeaderValue: aws.String("string"), // Required
								},
								// More values...
							},
						},
						CustomOriginConfig: &cloudfront.CustomOriginConfig{
							HTTPPort:             aws.Int64(1),                       // Required
							HTTPSPort:            aws.Int64(1),                       // Required
							OriginProtocolPolicy: aws.String("OriginProtocolPolicy"), // Required
							OriginSslProtocols: &cloudfront.OriginSslProtocols{
								Items: []*string{ // Required
									aws.String("SslProtocol"), // Required
									// More values...
								},
								Quantity: aws.Int64(1), // Required
							},
						},
						OriginPath: aws.String("string"),
						S3OriginConfig: &cloudfront.S3OriginConfig{
							OriginAccessIdentity: aws.String("string"), // Required
						},
					},
					// More values...
				},
			},
			Aliases: &cloudfront.Aliases{
				Quantity: aws.Int64(1), // Required
				Items: []*string{
					aws.String("string"), // Required
					// More values...
				},
			},
			CacheBehaviors: &cloudfront.CacheBehaviors{
				Quantity: aws.Int64(1), // Required
				Items: []*cloudfront.CacheBehavior{
					{ // Required
						ForwardedValues: &cloudfront.ForwardedValues{ // Required
							Cookies: &cloudfront.CookiePreference{ // Required
								Forward: aws.String("ItemSelection"), // Required
								WhitelistedNames: &cloudfront.CookieNames{
									Quantity: aws.Int64(1), // Required
									Items: []*string{
										aws.String("string"), // Required
										// More values...
									},
								},
							},
							QueryString: aws.Bool(true), // Required
							Headers: &cloudfront.Headers{
								Quantity: aws.Int64(1), // Required
								Items: []*string{
									aws.String("string"), // Required
									// More values...
								},
							},
							QueryStringCacheKeys: &cloudfront.QueryStringCacheKeys{
								Quantity: aws.Int64(1), // Required
								Items: []*string{
									aws.String("string"), // Required
									// More values...
								},
							},
						},
						MinTTL:         aws.Int64(1),         // Required
						PathPattern:    aws.String("string"), // Required
						TargetOriginId: aws.String("string"), // Required
						TrustedSigners: &cloudfront.TrustedSigners{ // Required
							Enabled:  aws.Bool(true), // Required
							Quantity: aws.Int64(1),   // Required
							Items: []*string{
								aws.String("string"), // Required
								// More values...
							},
						},
						ViewerProtocolPolicy: aws.String("ViewerProtocolPolicy"), // Required
						AllowedMethods: &cloudfront.AllowedMethods{
							Items: []*string{ // Required
								aws.String("Method"), // Required
								// More values...
							},
							Quantity: aws.Int64(1), // Required
							CachedMethods: &cloudfront.CachedMethods{
								Items: []*string{ // Required
									aws.String("Method"), // Required
									// More values...
								},
								Quantity: aws.Int64(1), // Required
							},
						},
						Compress:        aws.Bool(true),
						DefaultTTL:      aws.Int64(1),
						MaxTTL:          aws.Int64(1),
						SmoothStreaming: aws.Bool(true),
					},
					// More values...
				},
			},
			CustomErrorResponses: &cloudfront.CustomErrorResponses{
				Quantity: aws.Int64(1), // Required
				Items: []*cloudfront.CustomErrorResponse{
					{ // Required
						ErrorCode:          aws.Int64(1), // Required
						ErrorCachingMinTTL: aws.Int64(1),
						ResponseCode:       aws.String("string"),
						ResponsePagePath:   aws.String("string"),
					},
					// More values...
				},
			},
			DefaultRootObject: aws.String("string"),
			HttpVersion:       aws.String("HttpVersion"),
			Logging: &cloudfront.LoggingConfig{
				Bucket:         aws.String("string"), // Required
				Enabled:        aws.Bool(true),       // Required
				IncludeCookies: aws.Bool(true),       // Required
				Prefix:         aws.String("string"), // Required
			},
			PriceClass: aws.String("PriceClass"),
			Restrictions: &cloudfront.Restrictions{
				GeoRestriction: &cloudfront.GeoRestriction{ // Required
					Quantity:        aws.Int64(1),                     // Required
					RestrictionType: aws.String("GeoRestrictionType"), // Required
					Items: []*string{
						aws.String("string"), // Required
						// More values...
					},
				},
			},
			ViewerCertificate: &cloudfront.ViewerCertificate{
				ACMCertificateArn:            aws.String("string"),
				Certificate:                  aws.String("string"),
				CertificateSource:            aws.String("CertificateSource"),
				CloudFrontDefaultCertificate: aws.Bool(true),
				IAMCertificateId:             aws.String("string"),
				MinimumProtocolVersion:       aws.String("MinimumProtocolVersion"),
				SSLSupportMethod:             aws.String("SSLSupportMethod"),
			},
			WebACLId: aws.String("string"),
		},
		Id:      aws.String("string"), // Required
		IfMatch: aws.String("string"),
	}
	resp, err := svc.UpdateDistribution(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*CloudFront) UpdateDistributionRequest

func (c *CloudFront) UpdateDistributionRequest(input *UpdateDistributionInput) (req *request.Request, output *UpdateDistributionOutput)

UpdateDistributionRequest generates a "aws/request.Request" representing the client's request for the UpdateDistribution operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the UpdateDistribution method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// 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)
}

func (*CloudFront) UpdateStreamingDistribution

func (c *CloudFront) UpdateStreamingDistribution(input *UpdateStreamingDistributionInput) (*UpdateStreamingDistributionOutput, error)

Update a streaming distribution.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/cloudfront"
)

func main() {
	sess, err := session.NewSession()
	if err != nil {
		fmt.Println("failed to create session,", err)
		return
	}

	svc := cloudfront.New(sess)

	params := &cloudfront.UpdateStreamingDistributionInput{
		Id: aws.String("string"), // Required
		StreamingDistributionConfig: &cloudfront.StreamingDistributionConfig{ // Required
			CallerReference: aws.String("string"), // Required
			Comment:         aws.String("string"), // Required
			Enabled:         aws.Bool(true),       // Required
			S3Origin: &cloudfront.S3Origin{ // Required
				DomainName:           aws.String("string"), // Required
				OriginAccessIdentity: aws.String("string"), // Required
			},
			TrustedSigners: &cloudfront.TrustedSigners{ // Required
				Enabled:  aws.Bool(true), // Required
				Quantity: aws.Int64(1),   // Required
				Items: []*string{
					aws.String("string"), // Required
					// More values...
				},
			},
			Aliases: &cloudfront.Aliases{
				Quantity: aws.Int64(1), // Required
				Items: []*string{
					aws.String("string"), // Required
					// More values...
				},
			},
			Logging: &cloudfront.StreamingLoggingConfig{
				Bucket:  aws.String("string"), // Required
				Enabled: aws.Bool(true),       // Required
				Prefix:  aws.String("string"), // Required
			},
			PriceClass: aws.String("PriceClass"),
		},
		IfMatch: aws.String("string"),
	}
	resp, err := svc.UpdateStreamingDistribution(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*CloudFront) UpdateStreamingDistributionRequest

func (c *CloudFront) UpdateStreamingDistributionRequest(input *UpdateStreamingDistributionInput) (req *request.Request, output *UpdateStreamingDistributionOutput)

UpdateStreamingDistributionRequest generates a "aws/request.Request" representing the client's request for the UpdateStreamingDistribution operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the UpdateStreamingDistribution method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// 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)
}

func (*CloudFront) WaitUntilDistributionDeployed

func (c *CloudFront) WaitUntilDistributionDeployed(input *GetDistributionInput) error

WaitUntilDistributionDeployed uses the CloudFront API operation GetDistribution to wait for a condition to be met before returning. If the condition is not meet within the max attempt window an error will be returned.

func (*CloudFront) WaitUntilInvalidationCompleted

func (c *CloudFront) WaitUntilInvalidationCompleted(input *GetInvalidationInput) error

WaitUntilInvalidationCompleted uses the CloudFront API operation GetInvalidation to wait for a condition to be met before returning. If the condition is not meet within the max attempt window an error will be returned.

func (*CloudFront) WaitUntilStreamingDistributionDeployed

func (c *CloudFront) WaitUntilStreamingDistributionDeployed(input *GetStreamingDistributionInput) error

WaitUntilStreamingDistributionDeployed uses the CloudFront API operation GetStreamingDistribution to wait for a condition to be met before returning. If the condition is not meet within the max attempt window an error will be returned.

type CookieNames

type CookieNames struct {

	// Optional: A complex type that contains whitelisted cookies for this cache
	// behavior. If Quantity is 0, you can omit Items.
	Items []*string `locationNameList:"Name" type:"list"`

	// The number of whitelisted cookies for this cache behavior.
	//
	// Quantity is a required field
	Quantity *int64 `type:"integer" required:"true"`
	// contains filtered or unexported fields
}

A complex type that specifies the whitelisted cookies, if any, that you want CloudFront to forward to your origin that is associated with this cache behavior.

func (CookieNames) GoString

func (s CookieNames) GoString() string

GoString returns the string representation

func (CookieNames) String

func (s CookieNames) String() string

String returns the string representation

func (*CookieNames) Validate

func (s *CookieNames) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type CookiePreference

type CookiePreference struct {

	// Use this element to specify whether you want CloudFront to forward cookies
	// to the origin that is associated with this cache behavior. You can specify
	// all, none or whitelist. If you choose All, CloudFront forwards all cookies
	// regardless of how many your application uses.
	//
	// Forward is a required field
	Forward *string `type:"string" required:"true" enum:"ItemSelection"`

	// A complex type that specifies the whitelisted cookies, if any, that you want
	// CloudFront to forward to your origin that is associated with this cache behavior.
	WhitelistedNames *CookieNames `type:"structure"`
	// contains filtered or unexported fields
}

A complex type that specifies the cookie preferences associated with this cache behavior.

func (CookiePreference) GoString

func (s CookiePreference) GoString() string

GoString returns the string representation

func (CookiePreference) String

func (s CookiePreference) String() string

String returns the string representation

func (*CookiePreference) Validate

func (s *CookiePreference) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type CreateCloudFrontOriginAccessIdentityInput

type CreateCloudFrontOriginAccessIdentityInput struct {

	// The origin access identity's configuration information.
	//
	// CloudFrontOriginAccessIdentityConfig is a required field
	CloudFrontOriginAccessIdentityConfig *OriginAccessIdentityConfig `locationName:"CloudFrontOriginAccessIdentityConfig" type:"structure" required:"true"`
	// contains filtered or unexported fields
}

The request to create a new origin access identity.

func (CreateCloudFrontOriginAccessIdentityInput) GoString

GoString returns the string representation

func (CreateCloudFrontOriginAccessIdentityInput) String

String returns the string representation

func (*CreateCloudFrontOriginAccessIdentityInput) Validate

Validate inspects the fields of the type to determine if they are valid.

type CreateCloudFrontOriginAccessIdentityOutput

type CreateCloudFrontOriginAccessIdentityOutput struct {

	// 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"`
	// contains filtered or unexported fields
}

The returned result of the corresponding request.

func (CreateCloudFrontOriginAccessIdentityOutput) GoString

GoString returns the string representation

func (CreateCloudFrontOriginAccessIdentityOutput) String

String returns the string representation

type CreateDistributionInput

type CreateDistributionInput struct {

	// The distribution's configuration information.
	//
	// DistributionConfig is a required field
	DistributionConfig *DistributionConfig `locationName:"DistributionConfig" type:"structure" required:"true"`
	// contains filtered or unexported fields
}

The request to create a new distribution.

func (CreateDistributionInput) GoString

func (s CreateDistributionInput) GoString() string

GoString returns the string representation

func (CreateDistributionInput) String

func (s CreateDistributionInput) String() string

String returns the string representation

func (*CreateDistributionInput) Validate

func (s *CreateDistributionInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type CreateDistributionOutput

type CreateDistributionOutput struct {

	// 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"`
	// contains filtered or unexported fields
}

The returned result of the corresponding request.

func (CreateDistributionOutput) GoString

func (s CreateDistributionOutput) GoString() string

GoString returns the string representation

func (CreateDistributionOutput) String

func (s CreateDistributionOutput) String() string

String returns the string representation

type CreateDistributionWithTagsInput

type CreateDistributionWithTagsInput struct {

	// The distribution's configuration information.
	//
	// DistributionConfigWithTags is a required field
	DistributionConfigWithTags *DistributionConfigWithTags `locationName:"DistributionConfigWithTags" type:"structure" required:"true"`
	// contains filtered or unexported fields
}

The request to create a new distribution with tags

func (CreateDistributionWithTagsInput) GoString

GoString returns the string representation

func (CreateDistributionWithTagsInput) String

String returns the string representation

func (*CreateDistributionWithTagsInput) Validate

func (s *CreateDistributionWithTagsInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type CreateDistributionWithTagsOutput

type CreateDistributionWithTagsOutput struct {

	// 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"`
	// contains filtered or unexported fields
}

The returned result of the corresponding request.

func (CreateDistributionWithTagsOutput) GoString

GoString returns the string representation

func (CreateDistributionWithTagsOutput) String

String returns the string representation

type CreateInvalidationInput

type CreateInvalidationInput struct {

	// 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"`
	// contains filtered or unexported fields
}

The request to create an invalidation.

func (CreateInvalidationInput) GoString

func (s CreateInvalidationInput) GoString() string

GoString returns the string representation

func (CreateInvalidationInput) String

func (s CreateInvalidationInput) String() string

String returns the string representation

func (*CreateInvalidationInput) Validate

func (s *CreateInvalidationInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type CreateInvalidationOutput

type CreateInvalidationOutput struct {

	// 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"`
	// contains filtered or unexported fields
}

The returned result of the corresponding request.

func (CreateInvalidationOutput) GoString

func (s CreateInvalidationOutput) GoString() string

GoString returns the string representation

func (CreateInvalidationOutput) String

func (s CreateInvalidationOutput) String() string

String returns the string representation

type CreateStreamingDistributionInput

type CreateStreamingDistributionInput struct {

	// The streaming distribution's configuration information.
	//
	// StreamingDistributionConfig is a required field
	StreamingDistributionConfig *StreamingDistributionConfig `locationName:"StreamingDistributionConfig" type:"structure" required:"true"`
	// contains filtered or unexported fields
}

The request to create a new streaming distribution.

func (CreateStreamingDistributionInput) GoString

GoString returns the string representation

func (CreateStreamingDistributionInput) String

String returns the string representation

func (*CreateStreamingDistributionInput) Validate

Validate inspects the fields of the type to determine if they are valid.

type CreateStreamingDistributionOutput

type CreateStreamingDistributionOutput struct {

	// 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"`
	// contains filtered or unexported fields
}

The returned result of the corresponding request.

func (CreateStreamingDistributionOutput) GoString

GoString returns the string representation

func (CreateStreamingDistributionOutput) String

String returns the string representation

type CreateStreamingDistributionWithTagsInput

type CreateStreamingDistributionWithTagsInput struct {

	// The streaming distribution's configuration information.
	//
	// StreamingDistributionConfigWithTags is a required field
	StreamingDistributionConfigWithTags *StreamingDistributionConfigWithTags `locationName:"StreamingDistributionConfigWithTags" type:"structure" required:"true"`
	// contains filtered or unexported fields
}

The request to create a new streaming distribution with tags.

func (CreateStreamingDistributionWithTagsInput) GoString

GoString returns the string representation

func (CreateStreamingDistributionWithTagsInput) String

String returns the string representation

func (*CreateStreamingDistributionWithTagsInput) Validate

Validate inspects the fields of the type to determine if they are valid.

type CreateStreamingDistributionWithTagsOutput

type CreateStreamingDistributionWithTagsOutput struct {

	// 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"`
	// contains filtered or unexported fields
}

The returned result of the corresponding request.

func (CreateStreamingDistributionWithTagsOutput) GoString

GoString returns the string representation

func (CreateStreamingDistributionWithTagsOutput) String

String returns the string representation

type CustomErrorResponse

type CustomErrorResponse struct {

	// The minimum amount of time you want HTTP error codes to stay in CloudFront
	// caches before CloudFront queries your origin to see whether the object has
	// been updated. You can specify a value from 0 to 31,536,000.
	ErrorCachingMinTTL *int64 `type:"long"`

	// The 4xx or 5xx HTTP status code that you want to customize. For a list of
	// HTTP status codes that you can customize, see CloudFront documentation.
	//
	// ErrorCode is a required field
	ErrorCode *int64 `type:"integer" required:"true"`

	// The HTTP status code that you want CloudFront to return with the custom error
	// page to the viewer. For a list of HTTP status codes that you can replace,
	// see CloudFront Documentation.
	ResponseCode *string `type:"string"`

	// The path of the custom error page (for example, /custom_404.html). The path
	// is relative to the distribution and must begin with a slash (/). If the path
	// includes any non-ASCII characters or unsafe characters as defined in RFC
	// 1783 (http://www.ietf.org/rfc/rfc1738.txt), URL encode those characters.
	// Do not URL encode any other characters in the path, or CloudFront will not
	// return the custom error page to the viewer.
	ResponsePagePath *string `type:"string"`
	// contains filtered or unexported fields
}

A complex type that describes how you'd prefer CloudFront to respond to requests that result in either a 4xx or 5xx response. You can control whether a custom error page should be displayed, what the desired response code should be for this error page and how long should the error response be cached by CloudFront. If you don't want to specify any custom error responses, include only an empty CustomErrorResponses element. To delete all custom error responses in an existing distribution, update the distribution configuration and include only an empty CustomErrorResponses element. To add, change, or remove one or more custom error responses, update the distribution configuration and specify all of the custom error responses that you want to include in the updated distribution.

func (CustomErrorResponse) GoString

func (s CustomErrorResponse) GoString() string

GoString returns the string representation

func (CustomErrorResponse) String

func (s CustomErrorResponse) String() string

String returns the string representation

func (*CustomErrorResponse) Validate

func (s *CustomErrorResponse) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type CustomErrorResponses

type CustomErrorResponses struct {

	// Optional: A complex type that contains custom error responses for this distribution.
	// If Quantity is 0, you can omit Items.
	Items []*CustomErrorResponse `locationNameList:"CustomErrorResponse" type:"list"`

	// The number of custom error responses for this distribution.
	//
	// Quantity is a required field
	Quantity *int64 `type:"integer" required:"true"`
	// contains filtered or unexported fields
}

A complex type that contains zero or more CustomErrorResponse elements.

func (CustomErrorResponses) GoString

func (s CustomErrorResponses) GoString() string

GoString returns the string representation

func (CustomErrorResponses) String

func (s CustomErrorResponses) String() string

String returns the string representation

func (*CustomErrorResponses) Validate

func (s *CustomErrorResponses) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type CustomHeaders

type CustomHeaders struct {

	// A complex type that contains the custom headers for this Origin.
	Items []*OriginCustomHeader `locationNameList:"OriginCustomHeader" type:"list"`

	// The number of custom headers for this origin.
	//
	// Quantity is a required field
	Quantity *int64 `type:"integer" required:"true"`
	// contains filtered or unexported fields
}

A complex type that contains the list of Custom Headers for each origin.

func (CustomHeaders) GoString

func (s CustomHeaders) GoString() string

GoString returns the string representation

func (CustomHeaders) String

func (s CustomHeaders) String() string

String returns the string representation

func (*CustomHeaders) Validate

func (s *CustomHeaders) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type CustomOriginConfig

type CustomOriginConfig struct {

	// 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"`

	// The origin protocol policy to apply to your origin.
	//
	// OriginProtocolPolicy is a required field
	OriginProtocolPolicy *string `type:"string" required:"true" enum:"OriginProtocolPolicy"`

	// The SSL/TLS protocols that you want CloudFront to use when communicating
	// with your origin over HTTPS.
	OriginSslProtocols *OriginSslProtocols `type:"structure"`
	// contains filtered or unexported fields
}

A customer origin.

func (CustomOriginConfig) GoString

func (s CustomOriginConfig) GoString() string

GoString returns the string representation

func (CustomOriginConfig) String

func (s CustomOriginConfig) String() string

String returns the string representation

func (*CustomOriginConfig) Validate

func (s *CustomOriginConfig) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type DefaultCacheBehavior

type DefaultCacheBehavior struct {

	// 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 may not want users to have permission to delete objects from your origin.
	AllowedMethods *AllowedMethods `type:"structure"`

	// Whether you want CloudFront to automatically compress content for web requests
	// that include Accept-Encoding: gzip in the request header. If so, specify
	// true; if not, specify false. CloudFront compresses files larger than 1000
	// bytes and less than 1 megabyte for both Amazon S3 and custom origins. When
	// a CloudFront edge location is unusually busy, some files might not be compressed.
	// The value of the Content-Type header must be on the list of file types that
	// CloudFront will compress. For the current list, see Serving Compressed Content
	// (http://docs.aws.amazon.com/console/cloudfront/compressed-content) in the
	// Amazon CloudFront Developer Guide. If you configure CloudFront to compress
	// content, CloudFront removes the ETag response header from the objects that
	// it compresses. The ETag header indicates that the version in a CloudFront
	// edge cache is identical to the version on the origin server, but after compression
	// the two versions are no longer identical. As a result, for compressed objects,
	// CloudFront can't use the ETag header to determine whether an expired object
	// in the CloudFront edge cache is still the latest version.
	Compress *bool `type:"boolean"`

	// If you don't configure your origin to add a Cache-Control max-age directive
	// or an Expires header, DefaultTTL is the default amount of time (in seconds)
	// that an object is in a CloudFront cache 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. You can specify a value from 0 to 3,153,600,000 seconds (100
	// years).
	DefaultTTL *int64 `type:"long"`

	// A complex type that specifies how CloudFront handles query strings, cookies
	// and headers.
	//
	// ForwardedValues is a required field
	ForwardedValues *ForwardedValues `type:"structure" required:"true"`

	// The maximum amount of time (in seconds) that an object is in a CloudFront
	// cache 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. You can specify a value from 0 to 3,153,600,000
	// seconds (100 years).
	MaxTTL *int64 `type:"long"`

	// The minimum amount of time that you want objects to stay in CloudFront caches
	// before CloudFront queries your origin to see whether the object has been
	// updated.You can specify a value from 0 to 3,153,600,000 seconds (100 years).
	//
	// MinTTL is a required field
	MinTTL *int64 `type:"long" required:"true"`

	// Indicates whether you want to distribute media files in Microsoft Smooth
	// Streaming format using the origin that is associated with this cache behavior.
	// If so, specify true; if not, specify false.
	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, go to Using a Signed
	// URL to Serve Private Content in the 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"`

	// Use this element to specify the protocol that users can use to access the
	// files in the origin specified by TargetOriginId when a request matches the
	// path pattern in PathPattern. If you want CloudFront to allow end users to
	// use any available protocol, specify allow-all. If you want CloudFront to
	// require HTTPS, specify https. If you want CloudFront to respond to an HTTP
	// request with an HTTP status code of 301 (Moved Permanently) and the HTTPS
	// URL, specify redirect-to-https. The viewer then resubmits the request using
	// the HTTPS URL.
	//
	// ViewerProtocolPolicy is a required field
	ViewerProtocolPolicy *string `type:"string" required:"true" enum:"ViewerProtocolPolicy"`
	// contains filtered or unexported fields
}

A complex type that describes the default cache behavior if you do not 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.

func (DefaultCacheBehavior) GoString

func (s DefaultCacheBehavior) GoString() string

GoString returns the string representation

func (DefaultCacheBehavior) String

func (s DefaultCacheBehavior) String() string

String returns the string representation

func (*DefaultCacheBehavior) Validate

func (s *DefaultCacheBehavior) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type DeleteCloudFrontOriginAccessIdentityInput

type DeleteCloudFrontOriginAccessIdentityInput struct {

	// 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"`
	// contains filtered or unexported fields
}

The request to delete a origin access identity.

func (DeleteCloudFrontOriginAccessIdentityInput) GoString

GoString returns the string representation

func (DeleteCloudFrontOriginAccessIdentityInput) String

String returns the string representation

func (*DeleteCloudFrontOriginAccessIdentityInput) Validate

Validate inspects the fields of the type to determine if they are valid.

type DeleteCloudFrontOriginAccessIdentityOutput

type DeleteCloudFrontOriginAccessIdentityOutput struct {
	// contains filtered or unexported fields
}

func (DeleteCloudFrontOriginAccessIdentityOutput) GoString

GoString returns the string representation

func (DeleteCloudFrontOriginAccessIdentityOutput) String

String returns the string representation

type DeleteDistributionInput

type DeleteDistributionInput struct {

	// The distribution id.
	//
	// Id is a required field
	Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`

	// The value of the ETag header you received when you disabled the distribution.
	// For example: E2QWRUHAPOMQZL.
	IfMatch *string `location:"header" locationName:"If-Match" type:"string"`
	// contains filtered or unexported fields
}

The request to delete a distribution.

func (DeleteDistributionInput) GoString

func (s DeleteDistributionInput) GoString() string

GoString returns the string representation

func (DeleteDistributionInput) String

func (s DeleteDistributionInput) String() string

String returns the string representation

func (*DeleteDistributionInput) Validate

func (s *DeleteDistributionInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type DeleteDistributionOutput

type DeleteDistributionOutput struct {
	// contains filtered or unexported fields
}

func (DeleteDistributionOutput) GoString

func (s DeleteDistributionOutput) GoString() string

GoString returns the string representation

func (DeleteDistributionOutput) String

func (s DeleteDistributionOutput) String() string

String returns the string representation

type DeleteStreamingDistributionInput

type DeleteStreamingDistributionInput struct {

	// The distribution id.
	//
	// Id is a required field
	Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`

	// The value of the ETag header you received when you disabled the streaming
	// distribution. For example: E2QWRUHAPOMQZL.
	IfMatch *string `location:"header" locationName:"If-Match" type:"string"`
	// contains filtered or unexported fields
}

The request to delete a streaming distribution.

func (DeleteStreamingDistributionInput) GoString

GoString returns the string representation

func (DeleteStreamingDistributionInput) String

String returns the string representation

func (*DeleteStreamingDistributionInput) Validate

Validate inspects the fields of the type to determine if they are valid.

type DeleteStreamingDistributionOutput

type DeleteStreamingDistributionOutput struct {
	// contains filtered or unexported fields
}

func (DeleteStreamingDistributionOutput) GoString

GoString returns the string representation

func (DeleteStreamingDistributionOutput) String

String returns the string representation

type Distribution

type Distribution struct {

	// 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.
	//
	// DistributionConfig is a required field
	DistributionConfig *DistributionConfig `type:"structure" required:"true"`

	// The domain name corresponding to the distribution. For example: d604721fxaaqy9.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
	// throughout the Amazon CloudFront system.
	//
	// Status is a required field
	Status *string `type:"string" required:"true"`
	// contains filtered or unexported fields
}

A distribution.

func (Distribution) GoString

func (s Distribution) GoString() string

GoString returns the string representation

func (Distribution) String

func (s Distribution) String() string

String returns the string representation

type DistributionConfig

type DistributionConfig struct {

	// 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 number that ensures the request can't be replayed. If the CallerReference
	// is new (no matter the content of the DistributionConfig object), a new distribution
	// is created. If the CallerReference is a value you already sent in a previous
	// request to create a distribution, and the content of the DistributionConfig
	// 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 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.
	//
	// Comment is a required field
	Comment *string `type:"string" required:"true"`

	// A complex type that contains zero or more CustomErrorResponse elements.
	CustomErrorResponses *CustomErrorResponses `type:"structure"`

	// A complex type that describes the default cache behavior if you do not 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 return (for example, index.html) when
	// an end user requests the root URL for your distribution (http://www.example.com)
	// instead of an object in your distribution (http://www.example.com/index.html).
	// Specifying a default root object avoids exposing the contents of your distribution.
	// 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.
	DefaultRootObject *string `type:"string"`

	// Whether the distribution is enabled to accept end user requests for content.
	//
	// 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 will automatically use an earlier
	// version.
	HttpVersion *string `type:"string" enum:"HttpVersion"`

	// A complex type that controls whether access logs are written for the distribution.
	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"`

	// A complex type that contains information about price class for this distribution.
	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 contains information about viewer certificates for this
	// distribution.
	ViewerCertificate *ViewerCertificate `type:"structure"`

	// (Optional) If you're using AWS WAF to filter CloudFront requests, the Id
	// of the AWS WAF web ACL that is associated with the distribution.
	WebACLId *string `type:"string"`
	// contains filtered or unexported fields
}

A distribution Configuration.

func (DistributionConfig) GoString

func (s DistributionConfig) GoString() string

GoString returns the string representation

func (DistributionConfig) String

func (s DistributionConfig) String() string

String returns the string representation

func (*DistributionConfig) Validate

func (s *DistributionConfig) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type DistributionConfigWithTags

type DistributionConfigWithTags struct {

	// 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"`
	// contains filtered or unexported fields
}

A distribution Configuration and a list of tags to be associated with the distribution.

func (DistributionConfigWithTags) GoString

func (s DistributionConfigWithTags) GoString() string

GoString returns the string representation

func (DistributionConfigWithTags) String

String returns the string representation

func (*DistributionConfigWithTags) Validate

func (s *DistributionConfigWithTags) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type DistributionList

type DistributionList struct {

	// 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"`
	// contains filtered or unexported fields
}

A distribution list.

func (DistributionList) GoString

func (s DistributionList) GoString() string

GoString returns the string representation

func (DistributionList) String

func (s DistributionList) String() string

String returns the string representation

type DistributionSummary

type DistributionSummary struct {

	// 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 do not 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 corresponding to the distribution. For example: d604721fxaaqy9.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"`

	// 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"`

	// 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"`

	// This response element 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 contains information about viewer certificates for this
	// distribution.
	//
	// 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"`
	// contains filtered or unexported fields
}

A summary of the information for an Amazon CloudFront distribution.

func (DistributionSummary) GoString

func (s DistributionSummary) GoString() string

GoString returns the string representation

func (DistributionSummary) String

func (s DistributionSummary) String() string

String returns the string representation

type ForwardedValues

type ForwardedValues struct {

	// A complex type that specifies how CloudFront handles cookies.
	//
	// 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 vary upon 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.
	//
	// 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"`
	// contains filtered or unexported fields
}

A complex type that specifies how CloudFront handles query strings, cookies and headers.

func (ForwardedValues) GoString

func (s ForwardedValues) GoString() string

GoString returns the string representation

func (ForwardedValues) String

func (s ForwardedValues) String() string

String returns the string representation

func (*ForwardedValues) Validate

func (s *ForwardedValues) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type GeoRestriction

type GeoRestriction struct {

	// 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 in 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 do not 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"`
	// contains filtered or unexported fields
}

A complex type that controls the countries in which your content is distributed. For more information about geo restriction, go to Customizing Error Responses in the Amazon CloudFront Developer Guide. CloudFront determines the location of your users using MaxMind GeoIP databases. For information about the accuracy of these databases, see How accurate are your GeoIP databases? on the MaxMind website.

func (GeoRestriction) GoString

func (s GeoRestriction) GoString() string

GoString returns the string representation

func (GeoRestriction) String

func (s GeoRestriction) String() string

String returns the string representation

func (*GeoRestriction) Validate

func (s *GeoRestriction) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type GetCloudFrontOriginAccessIdentityConfigInput

type GetCloudFrontOriginAccessIdentityConfigInput struct {

	// The identity's id.
	//
	// Id is a required field
	Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
	// contains filtered or unexported fields
}

The request to get an origin access identity's configuration.

func (GetCloudFrontOriginAccessIdentityConfigInput) GoString

GoString returns the string representation

func (GetCloudFrontOriginAccessIdentityConfigInput) String

String returns the string representation

func (*GetCloudFrontOriginAccessIdentityConfigInput) Validate

Validate inspects the fields of the type to determine if they are valid.

type GetCloudFrontOriginAccessIdentityConfigOutput

type GetCloudFrontOriginAccessIdentityConfigOutput struct {

	// 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"`
	// contains filtered or unexported fields
}

The returned result of the corresponding request.

func (GetCloudFrontOriginAccessIdentityConfigOutput) GoString

GoString returns the string representation

func (GetCloudFrontOriginAccessIdentityConfigOutput) String

String returns the string representation

type GetCloudFrontOriginAccessIdentityInput

type GetCloudFrontOriginAccessIdentityInput struct {

	// The identity's id.
	//
	// Id is a required field
	Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
	// contains filtered or unexported fields
}

The request to get an origin access identity's information.

func (GetCloudFrontOriginAccessIdentityInput) GoString

GoString returns the string representation

func (GetCloudFrontOriginAccessIdentityInput) String

String returns the string representation

func (*GetCloudFrontOriginAccessIdentityInput) Validate

Validate inspects the fields of the type to determine if they are valid.

type GetCloudFrontOriginAccessIdentityOutput

type GetCloudFrontOriginAccessIdentityOutput struct {

	// 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"`
	// contains filtered or unexported fields
}

The returned result of the corresponding request.

func (GetCloudFrontOriginAccessIdentityOutput) GoString

GoString returns the string representation

func (GetCloudFrontOriginAccessIdentityOutput) String

String returns the string representation

type GetDistributionConfigInput

type GetDistributionConfigInput struct {

	// The distribution's id.
	//
	// Id is a required field
	Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
	// contains filtered or unexported fields
}

The request to get a distribution configuration.

func (GetDistributionConfigInput) GoString

func (s GetDistributionConfigInput) GoString() string

GoString returns the string representation

func (GetDistributionConfigInput) String

String returns the string representation

func (*GetDistributionConfigInput) Validate

func (s *GetDistributionConfigInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type GetDistributionConfigOutput

type GetDistributionConfigOutput struct {

	// 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"`
	// contains filtered or unexported fields
}

The returned result of the corresponding request.

func (GetDistributionConfigOutput) GoString

func (s GetDistributionConfigOutput) GoString() string

GoString returns the string representation

func (GetDistributionConfigOutput) String

String returns the string representation

type GetDistributionInput

type GetDistributionInput struct {

	// The distribution's id.
	//
	// Id is a required field
	Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
	// contains filtered or unexported fields
}

The request to get a distribution's information.

func (GetDistributionInput) GoString

func (s GetDistributionInput) GoString() string

GoString returns the string representation

func (GetDistributionInput) String

func (s GetDistributionInput) String() string

String returns the string representation

func (*GetDistributionInput) Validate

func (s *GetDistributionInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type GetDistributionOutput

type GetDistributionOutput struct {

	// 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"`
	// contains filtered or unexported fields
}

The returned result of the corresponding request.

func (GetDistributionOutput) GoString

func (s GetDistributionOutput) GoString() string

GoString returns the string representation

func (GetDistributionOutput) String

func (s GetDistributionOutput) String() string

String returns the string representation

type GetInvalidationInput

type GetInvalidationInput struct {

	// The distribution's id.
	//
	// DistributionId is a required field
	DistributionId *string `location:"uri" locationName:"DistributionId" type:"string" required:"true"`

	// The invalidation's id.
	//
	// Id is a required field
	Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
	// contains filtered or unexported fields
}

The request to get an invalidation's information.

func (GetInvalidationInput) GoString

func (s GetInvalidationInput) GoString() string

GoString returns the string representation

func (GetInvalidationInput) String

func (s GetInvalidationInput) String() string

String returns the string representation

func (*GetInvalidationInput) Validate

func (s *GetInvalidationInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type GetInvalidationOutput

type GetInvalidationOutput struct {

	// The invalidation's information.
	Invalidation *Invalidation `type:"structure"`
	// contains filtered or unexported fields
}

The returned result of the corresponding request.

func (GetInvalidationOutput) GoString

func (s GetInvalidationOutput) GoString() string

GoString returns the string representation

func (GetInvalidationOutput) String

func (s GetInvalidationOutput) String() string

String returns the string representation

type GetStreamingDistributionConfigInput

type GetStreamingDistributionConfigInput struct {

	// The streaming distribution's id.
	//
	// Id is a required field
	Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
	// contains filtered or unexported fields
}

To request to get a streaming distribution configuration.

func (GetStreamingDistributionConfigInput) GoString

GoString returns the string representation

func (GetStreamingDistributionConfigInput) String

String returns the string representation

func (*GetStreamingDistributionConfigInput) Validate

Validate inspects the fields of the type to determine if they are valid.

type GetStreamingDistributionConfigOutput

type GetStreamingDistributionConfigOutput struct {

	// 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"`
	// contains filtered or unexported fields
}

The returned result of the corresponding request.

func (GetStreamingDistributionConfigOutput) GoString

GoString returns the string representation

func (GetStreamingDistributionConfigOutput) String

String returns the string representation

type GetStreamingDistributionInput

type GetStreamingDistributionInput struct {

	// The streaming distribution's id.
	//
	// Id is a required field
	Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
	// contains filtered or unexported fields
}

The request to get a streaming distribution's information.

func (GetStreamingDistributionInput) GoString

GoString returns the string representation

func (GetStreamingDistributionInput) String

String returns the string representation

func (*GetStreamingDistributionInput) Validate

func (s *GetStreamingDistributionInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type GetStreamingDistributionOutput

type GetStreamingDistributionOutput struct {

	// 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"`
	// contains filtered or unexported fields
}

The returned result of the corresponding request.

func (GetStreamingDistributionOutput) GoString

GoString returns the string representation

func (GetStreamingDistributionOutput) String

String returns the string representation

type Headers

type Headers struct {

	// Optional: A complex type that contains a Name element for each header that
	// you want CloudFront to forward to the origin and to vary on for 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 forward to the
	// origin and to vary on for this cache behavior. The maximum number of headers
	// that you can specify by name is 10. If you want CloudFront to forward all
	// headers to the origin and vary on all of them, specify 1 for Quantity and
	// * for Name. If you don't want CloudFront to forward any additional headers
	// to the origin or to vary on any headers, specify 0 for Quantity and omit
	// Items.
	//
	// Quantity is a required field
	Quantity *int64 `type:"integer" required:"true"`
	// contains filtered or unexported fields
}

A complex type that specifies the headers that you want CloudFront to forward to the origin for this cache behavior. For the headers that you specify, CloudFront also caches separate versions of a given object based on the header values in viewer requests; this is known as varying on headers. 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 vary on the Product header. CloudFront forwards the Product header to the origin and caches the response from the origin once for each header value.

func (Headers) GoString

func (s Headers) GoString() string

GoString returns the string representation

func (Headers) String

func (s Headers) String() string

String returns the string representation

func (*Headers) Validate

func (s *Headers) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type Invalidation

type Invalidation struct {

	// 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"`
	// contains filtered or unexported fields
}

An invalidation.

func (Invalidation) GoString

func (s Invalidation) GoString() string

GoString returns the string representation

func (Invalidation) String

func (s Invalidation) String() string

String returns the string representation

type InvalidationBatch

type InvalidationBatch struct {

	// A unique name that ensures the request can't be replayed. If the CallerReference
	// is new (no matter the content of the Path object), a new distribution is
	// created. If the CallerReference is a value you already sent in a previous
	// request to create an invalidation batch, and the content of each Path element
	// is identical to the original request, 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 a distribution 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"`

	// The path of the object to invalidate. The path is relative to the distribution
	// and must begin with a slash (/). You must enclose each invalidation object
	// with the Path element tags. If the path includes non-ASCII characters or
	// unsafe characters as defined in RFC 1783 (http://www.ietf.org/rfc/rfc1738.txt),
	// URL encode those characters. Do not URL encode any other characters in the
	// path, or CloudFront will not invalidate the old version of the updated object.
	//
	// Paths is a required field
	Paths *Paths `type:"structure" required:"true"`
	// contains filtered or unexported fields
}

An invalidation batch.

func (InvalidationBatch) GoString

func (s InvalidationBatch) GoString() string

GoString returns the string representation

func (InvalidationBatch) String

func (s InvalidationBatch) String() string

String returns the string representation

func (*InvalidationBatch) Validate

func (s *InvalidationBatch) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type InvalidationList

type InvalidationList struct {

	// 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 that was created by the current AWS account.
	Items []*InvalidationSummary `locationNameList:"InvalidationSummary" 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 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"`
	// contains filtered or unexported fields
}

An invalidation list.

func (InvalidationList) GoString

func (s InvalidationList) GoString() string

GoString returns the string representation

func (InvalidationList) String

func (s InvalidationList) String() string

String returns the string representation

type InvalidationSummary

type InvalidationSummary struct {

	// 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"`
	// contains filtered or unexported fields
}

Summary of an invalidation request.

func (InvalidationSummary) GoString

func (s InvalidationSummary) GoString() string

GoString returns the string representation

func (InvalidationSummary) String

func (s InvalidationSummary) String() string

String returns the string representation

type KeyPairIds

type KeyPairIds struct {

	// A complex type that lists the active CloudFront key pairs, if any, that are
	// associated with AwsAccountNumber.
	Items []*string `locationNameList:"KeyPairId" type:"list"`

	// The number of active CloudFront key pairs for AwsAccountNumber.
	//
	// Quantity is a required field
	Quantity *int64 `type:"integer" required:"true"`
	// contains filtered or unexported fields
}

A complex type that lists the active CloudFront key pairs, if any, that are associated with AwsAccountNumber.

func (KeyPairIds) GoString

func (s KeyPairIds) GoString() string

GoString returns the string representation

func (KeyPairIds) String

func (s KeyPairIds) String() string

String returns the string representation

type ListCloudFrontOriginAccessIdentitiesInput

type ListCloudFrontOriginAccessIdentitiesInput struct {

	// 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"`
	// contains filtered or unexported fields
}

The request to list origin access identities.

func (ListCloudFrontOriginAccessIdentitiesInput) GoString

GoString returns the string representation

func (ListCloudFrontOriginAccessIdentitiesInput) String

String returns the string representation

type ListCloudFrontOriginAccessIdentitiesOutput

type ListCloudFrontOriginAccessIdentitiesOutput struct {

	// The CloudFrontOriginAccessIdentityList type.
	CloudFrontOriginAccessIdentityList *OriginAccessIdentityList `type:"structure"`
	// contains filtered or unexported fields
}

The returned result of the corresponding request.

func (ListCloudFrontOriginAccessIdentitiesOutput) GoString

GoString returns the string representation

func (ListCloudFrontOriginAccessIdentitiesOutput) String

String returns the string representation

type ListDistributionsByWebACLIdInput

type ListDistributionsByWebACLIdInput struct {

	// 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 for which 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"`
	// contains filtered or unexported fields
}

The request to list distributions that are associated with a specified AWS WAF web ACL.

func (ListDistributionsByWebACLIdInput) GoString

GoString returns the string representation

func (ListDistributionsByWebACLIdInput) String

String returns the string representation

func (*ListDistributionsByWebACLIdInput) Validate

Validate inspects the fields of the type to determine if they are valid.

type ListDistributionsByWebACLIdOutput

type ListDistributionsByWebACLIdOutput struct {

	// The DistributionList type.
	DistributionList *DistributionList `type:"structure"`
	// contains filtered or unexported fields
}

The response to a request to list the distributions that are associated with a specified AWS WAF web ACL.

func (ListDistributionsByWebACLIdOutput) GoString

GoString returns the string representation

func (ListDistributionsByWebACLIdOutput) String

String returns the string representation

type ListDistributionsInput

type ListDistributionsInput struct {

	// 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"`
	// contains filtered or unexported fields
}

The request to list your distributions.

func (ListDistributionsInput) GoString

func (s ListDistributionsInput) GoString() string

GoString returns the string representation

func (ListDistributionsInput) String

func (s ListDistributionsInput) String() string

String returns the string representation

type ListDistributionsOutput

type ListDistributionsOutput struct {

	// The DistributionList type.
	DistributionList *DistributionList `type:"structure"`
	// contains filtered or unexported fields
}

The returned result of the corresponding request.

func (ListDistributionsOutput) GoString

func (s ListDistributionsOutput) GoString() string

GoString returns the string representation

func (ListDistributionsOutput) String

func (s ListDistributionsOutput) String() string

String returns the string representation

type ListInvalidationsInput

type ListInvalidationsInput struct {

	// 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 the 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 you want in the response body.
	MaxItems *int64 `location:"querystring" locationName:"MaxItems" type:"integer"`
	// contains filtered or unexported fields
}

The request to list invalidations.

func (ListInvalidationsInput) GoString

func (s ListInvalidationsInput) GoString() string

GoString returns the string representation

func (ListInvalidationsInput) String

func (s ListInvalidationsInput) String() string

String returns the string representation

func (*ListInvalidationsInput) Validate

func (s *ListInvalidationsInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type ListInvalidationsOutput

type ListInvalidationsOutput struct {

	// Information about invalidation batches.
	InvalidationList *InvalidationList `type:"structure"`
	// contains filtered or unexported fields
}

The returned result of the corresponding request.

func (ListInvalidationsOutput) GoString

func (s ListInvalidationsOutput) GoString() string

GoString returns the string representation

func (ListInvalidationsOutput) String

func (s ListInvalidationsOutput) String() string

String returns the string representation

type ListStreamingDistributionsInput

type ListStreamingDistributionsInput struct {

	// Use this when paginating results to indicate where to begin in your list
	// of streaming 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 streaming distributions you want in the response body.
	MaxItems *int64 `location:"querystring" locationName:"MaxItems" type:"integer"`
	// contains filtered or unexported fields
}

The request to list your streaming distributions.

func (ListStreamingDistributionsInput) GoString

GoString returns the string representation

func (ListStreamingDistributionsInput) String

String returns the string representation

type ListStreamingDistributionsOutput

type ListStreamingDistributionsOutput struct {

	// The StreamingDistributionList type.
	StreamingDistributionList *StreamingDistributionList `type:"structure"`
	// contains filtered or unexported fields
}

The returned result of the corresponding request.

func (ListStreamingDistributionsOutput) GoString

GoString returns the string representation

func (ListStreamingDistributionsOutput) String

String returns the string representation

type ListTagsForResourceInput

type ListTagsForResourceInput struct {

	// An ARN of a CloudFront resource.
	//
	// Resource is a required field
	Resource *string `location:"querystring" locationName:"Resource" type:"string" required:"true"`
	// contains filtered or unexported fields
}

The request to list tags for a CloudFront resource.

func (ListTagsForResourceInput) GoString

func (s ListTagsForResourceInput) GoString() string

GoString returns the string representation

func (ListTagsForResourceInput) String

func (s ListTagsForResourceInput) String() string

String returns the string representation

func (*ListTagsForResourceInput) Validate

func (s *ListTagsForResourceInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type ListTagsForResourceOutput

type ListTagsForResourceOutput struct {

	// A complex type that contains zero or more Tag elements.
	//
	// Tags is a required field
	Tags *Tags `type:"structure" required:"true"`
	// contains filtered or unexported fields
}

The returned result of the corresponding request.

func (ListTagsForResourceOutput) GoString

func (s ListTagsForResourceOutput) GoString() string

GoString returns the string representation

func (ListTagsForResourceOutput) String

func (s ListTagsForResourceOutput) String() string

String returns the string representation

type LoggingConfig

type LoggingConfig struct {

	// 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 do not 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 do not 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 do not 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"`
	// contains filtered or unexported fields
}

A complex type that controls whether access logs are written for the distribution.

func (LoggingConfig) GoString

func (s LoggingConfig) GoString() string

GoString returns the string representation

func (LoggingConfig) String

func (s LoggingConfig) String() string

String returns the string representation

func (*LoggingConfig) Validate

func (s *LoggingConfig) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type Origin

type Origin struct {

	// A complex type that contains information about the custom headers associated
	// with this Origin.
	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.
	// 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.
	//
	// 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. You use the value of Id when you create a cache behavior.
	// The Id identifies the origin that CloudFront routes a request to when the
	// request matches the path pattern for that cache behavior.
	//
	// 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.
	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"`
	// contains filtered or unexported fields
}

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.

func (Origin) GoString

func (s Origin) GoString() string

GoString returns the string representation

func (Origin) String

func (s Origin) String() string

String returns the string representation

func (*Origin) Validate

func (s *Origin) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type OriginAccessIdentity

type OriginAccessIdentity struct {

	// 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, 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"`
	// contains filtered or unexported fields
}

CloudFront origin access identity.

func (OriginAccessIdentity) GoString

func (s OriginAccessIdentity) GoString() string

GoString returns the string representation

func (OriginAccessIdentity) String

func (s OriginAccessIdentity) String() string

String returns the string representation

type OriginAccessIdentityConfig

type OriginAccessIdentityConfig struct {

	// 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 you already sent in a previous request to create an identity,
	// 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"`
	// contains filtered or unexported fields
}

Origin access identity configuration.

func (OriginAccessIdentityConfig) GoString

func (s OriginAccessIdentityConfig) GoString() string

GoString returns the string representation

func (OriginAccessIdentityConfig) String

String returns the string representation

func (*OriginAccessIdentityConfig) Validate

func (s *OriginAccessIdentityConfig) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type OriginAccessIdentityList

type OriginAccessIdentityList struct {

	// 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"`

	// 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 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"`
	// contains filtered or unexported fields
}

The CloudFrontOriginAccessIdentityList type.

func (OriginAccessIdentityList) GoString

func (s OriginAccessIdentityList) GoString() string

GoString returns the string representation

func (OriginAccessIdentityList) String

func (s OriginAccessIdentityList) String() string

String returns the string representation

type OriginAccessIdentitySummary

type OriginAccessIdentitySummary struct {

	// 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"`
	// contains filtered or unexported fields
}

Summary of the information about a CloudFront origin access identity.

func (OriginAccessIdentitySummary) GoString

func (s OriginAccessIdentitySummary) GoString() string

GoString returns the string representation

func (OriginAccessIdentitySummary) String

String returns the string representation

type OriginCustomHeader

type OriginCustomHeader struct {

	// The header's name.
	//
	// HeaderName is a required field
	HeaderName *string `type:"string" required:"true"`

	// The header's value.
	//
	// HeaderValue is a required field
	HeaderValue *string `type:"string" required:"true"`
	// contains filtered or unexported fields
}

A complex type that contains information related to a Header

func (OriginCustomHeader) GoString

func (s OriginCustomHeader) GoString() string

GoString returns the string representation

func (OriginCustomHeader) String

func (s OriginCustomHeader) String() string

String returns the string representation

func (*OriginCustomHeader) Validate

func (s *OriginCustomHeader) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type OriginSslProtocols

type OriginSslProtocols struct {

	// A complex type that contains one SslProtocol element for each SSL/TLS protocol
	// that you want to allow CloudFront to use when establishing an HTTPS connection
	// with this origin.
	//
	// 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"`
	// contains filtered or unexported fields
}

A complex type that contains the list of SSL/TLS protocols that you want CloudFront to use when communicating with your origin over HTTPS.

func (OriginSslProtocols) GoString

func (s OriginSslProtocols) GoString() string

GoString returns the string representation

func (OriginSslProtocols) String

func (s OriginSslProtocols) String() string

String returns the string representation

func (*OriginSslProtocols) Validate

func (s *OriginSslProtocols) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type Origins

type Origins struct {

	// 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"`
	// contains filtered or unexported fields
}

A complex type that contains information about origins for this distribution.

func (Origins) GoString

func (s Origins) GoString() string

GoString returns the string representation

func (Origins) String

func (s Origins) String() string

String returns the string representation

func (*Origins) Validate

func (s *Origins) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type Paths

type Paths struct {

	// A complex type that contains a list of the objects 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"`
	// contains filtered or unexported fields
}

A complex type that contains information about the objects that you want to invalidate.

func (Paths) GoString

func (s Paths) GoString() string

GoString returns the string representation

func (Paths) String

func (s Paths) String() string

String returns the string representation

func (*Paths) Validate

func (s *Paths) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type QueryStringCacheKeys

type QueryStringCacheKeys struct {

	// 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"`
	// contains filtered or unexported fields
}

func (QueryStringCacheKeys) GoString

func (s QueryStringCacheKeys) GoString() string

GoString returns the string representation

func (QueryStringCacheKeys) String

func (s QueryStringCacheKeys) String() string

String returns the string representation

func (*QueryStringCacheKeys) Validate

func (s *QueryStringCacheKeys) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type Restrictions

type Restrictions struct {

	// A complex type that controls the countries in which your content is distributed.
	// For more information about geo restriction, go to Customizing Error Responses
	// in the Amazon CloudFront Developer Guide. CloudFront determines the location
	// of your users using MaxMind GeoIP databases. For information about the accuracy
	// of these databases, see How accurate are your GeoIP databases? on the MaxMind
	// website.
	//
	// GeoRestriction is a required field
	GeoRestriction *GeoRestriction `type:"structure" required:"true"`
	// contains filtered or unexported fields
}

A complex type that identifies ways in which you want to restrict distribution of your content.

func (Restrictions) GoString

func (s Restrictions) GoString() string

GoString returns the string representation

func (Restrictions) String

func (s Restrictions) String() string

String returns the string representation

func (*Restrictions) Validate

func (s *Restrictions) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type S3Origin

type S3Origin struct {

	// The DNS name of the S3 origin.
	//
	// DomainName is a required field
	DomainName *string `type:"string" required:"true"`

	// Your S3 origin's origin access identity.
	//
	// OriginAccessIdentity is a required field
	OriginAccessIdentity *string `type:"string" required:"true"`
	// contains filtered or unexported fields
}

A complex type that contains information about the Amazon S3 bucket from which you want CloudFront to get your media files for distribution.

func (S3Origin) GoString

func (s S3Origin) GoString() string

GoString returns the string representation

func (S3Origin) String

func (s S3Origin) String() string

String returns the string representation

func (*S3Origin) Validate

func (s *S3Origin) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type S3OriginConfig

type S3OriginConfig struct {

	// The CloudFront origin access identity to associate with the origin. Use an
	// origin access identity to configure the origin 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. Use the format origin-access-identity/cloudfront/Id
	// where Id is the value that CloudFront returned in the Id element when you
	// created the origin access identity.
	//
	// OriginAccessIdentity is a required field
	OriginAccessIdentity *string `type:"string" required:"true"`
	// contains filtered or unexported fields
}

A complex type that contains information about the Amazon S3 origin. If the origin is a custom origin, use the CustomOriginConfig element instead.

func (S3OriginConfig) GoString

func (s S3OriginConfig) GoString() string

GoString returns the string representation

func (S3OriginConfig) String

func (s S3OriginConfig) String() string

String returns the string representation

func (*S3OriginConfig) Validate

func (s *S3OriginConfig) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type Signer

type Signer struct {

	// Specifies an AWS account that can create signed URLs. Values: self, which
	// indicates that the AWS account that was used to create the distribution can
	// created signed URLs, or an AWS account number. Omit the dashes in the 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"`
	// contains filtered or unexported fields
}

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.

func (Signer) GoString

func (s Signer) GoString() string

GoString returns the string representation

func (Signer) String

func (s Signer) String() string

String returns the string representation

type StreamingDistribution

type StreamingDistribution struct {

	// 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"`

	// 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 domain name corresponding to the streaming distribution. For example:
	// s5c39gqb8ow64r.cloudfront.net.
	//
	// DomainName is a required field
	DomainName *string `type:"string" required:"true"`

	// The identifier for the streaming distribution. For example: EGTXBD79H29TRA8.
	//
	// Id is a required field
	Id *string `type:"string" required:"true"`

	// The date and time the distribution was last modified.
	LastModifiedTime *time.Time `type:"timestamp" timestampFormat:"iso8601"`

	// The current status of the streaming 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"`

	// The current configuration information for the streaming distribution.
	//
	// StreamingDistributionConfig is a required field
	StreamingDistributionConfig *StreamingDistributionConfig `type:"structure" required:"true"`
	// contains filtered or unexported fields
}

A streaming distribution.

func (StreamingDistribution) GoString

func (s StreamingDistribution) GoString() string

GoString returns the string representation

func (StreamingDistribution) String

func (s StreamingDistribution) String() string

String returns the string representation

type StreamingDistributionConfig

type StreamingDistributionConfig struct {

	// 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 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
	// 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 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 end 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 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, go to Using a Signed
	// URL to Serve Private Content in the 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"`
	// contains filtered or unexported fields
}

The configuration for the streaming distribution.

func (StreamingDistributionConfig) GoString

func (s StreamingDistributionConfig) GoString() string

GoString returns the string representation

func (StreamingDistributionConfig) String

String returns the string representation

func (*StreamingDistributionConfig) Validate

func (s *StreamingDistributionConfig) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type StreamingDistributionConfigWithTags

type StreamingDistributionConfigWithTags struct {

	// 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"`
	// contains filtered or unexported fields
}

A streaming distribution Configuration and a list of tags to be associated with the streaming distribution.

func (StreamingDistributionConfigWithTags) GoString

GoString returns the string representation

func (StreamingDistributionConfigWithTags) String

String returns the string representation

func (*StreamingDistributionConfigWithTags) Validate

Validate inspects the fields of the type to determine if they are valid.

type StreamingDistributionList

type StreamingDistributionList struct {

	// 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 streaming
	// 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"`
	// contains filtered or unexported fields
}

A streaming distribution list.

func (StreamingDistributionList) GoString

func (s StreamingDistributionList) GoString() string

GoString returns the string representation

func (StreamingDistributionList) String

func (s StreamingDistributionList) String() string

String returns the string representation

type StreamingDistributionSummary

type StreamingDistributionSummary struct {

	// 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: d604721fxaaqy9.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. For more information, go to Using a Signed
	// URL to Serve Private Content in the 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"`
	// contains filtered or unexported fields
}

A summary of the information for an Amazon CloudFront streaming distribution.

func (StreamingDistributionSummary) GoString

func (s StreamingDistributionSummary) GoString() string

GoString returns the string representation

func (StreamingDistributionSummary) String

String returns the string representation

type StreamingLoggingConfig

type StreamingLoggingConfig struct {

	// 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 do not 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 do not 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"`
	// contains filtered or unexported fields
}

A complex type that controls whether access logs are written for this streaming distribution.

func (StreamingLoggingConfig) GoString

func (s StreamingLoggingConfig) GoString() string

GoString returns the string representation

func (StreamingLoggingConfig) String

func (s StreamingLoggingConfig) String() string

String returns the string representation

func (*StreamingLoggingConfig) Validate

func (s *StreamingLoggingConfig) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type Tag

type Tag struct {

	// 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"`
	// contains filtered or unexported fields
}

A complex type that contains Tag key and Tag value.

func (Tag) GoString

func (s Tag) GoString() string

GoString returns the string representation

func (Tag) String

func (s Tag) String() string

String returns the string representation

func (*Tag) Validate

func (s *Tag) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type TagKeys

type TagKeys struct {

	// A complex type that contains Tag key elements
	Items []*string `locationNameList:"Key" type:"list"`
	// contains filtered or unexported fields
}

A complex type that contains zero or more Tag elements.

func (TagKeys) GoString

func (s TagKeys) GoString() string

GoString returns the string representation

func (TagKeys) String

func (s TagKeys) String() string

String returns the string representation

type TagResourceInput

type TagResourceInput struct {

	// 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"`
	// contains filtered or unexported fields
}

The request to add tags to a CloudFront resource.

func (TagResourceInput) GoString

func (s TagResourceInput) GoString() string

GoString returns the string representation

func (TagResourceInput) String

func (s TagResourceInput) String() string

String returns the string representation

func (*TagResourceInput) Validate

func (s *TagResourceInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type TagResourceOutput

type TagResourceOutput struct {
	// contains filtered or unexported fields
}

func (TagResourceOutput) GoString

func (s TagResourceOutput) GoString() string

GoString returns the string representation

func (TagResourceOutput) String

func (s TagResourceOutput) String() string

String returns the string representation

type Tags

type Tags struct {

	// A complex type that contains Tag elements
	Items []*Tag `locationNameList:"Tag" type:"list"`
	// contains filtered or unexported fields
}

A complex type that contains zero or more Tag elements.

func (Tags) GoString

func (s Tags) GoString() string

GoString returns the string representation

func (Tags) String

func (s Tags) String() string

String returns the string representation

func (*Tags) Validate

func (s *Tags) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type TrustedSigners

type TrustedSigners struct {

	// Specifies whether you want to require end users 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"`
	// contains filtered or unexported fields
}

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, go to Using a Signed URL to Serve Private Content in the 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.

func (TrustedSigners) GoString

func (s TrustedSigners) GoString() string

GoString returns the string representation

func (TrustedSigners) String

func (s TrustedSigners) String() string

String returns the string representation

func (*TrustedSigners) Validate

func (s *TrustedSigners) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type UntagResourceInput

type UntagResourceInput struct {

	// 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"`
	// contains filtered or unexported fields
}

The request to remove tags from a CloudFront resource.

func (UntagResourceInput) GoString

func (s UntagResourceInput) GoString() string

GoString returns the string representation

func (UntagResourceInput) String

func (s UntagResourceInput) String() string

String returns the string representation

func (*UntagResourceInput) Validate

func (s *UntagResourceInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type UntagResourceOutput

type UntagResourceOutput struct {
	// contains filtered or unexported fields
}

func (UntagResourceOutput) GoString

func (s UntagResourceOutput) GoString() string

GoString returns the string representation

func (UntagResourceOutput) String

func (s UntagResourceOutput) String() string

String returns the string representation

type UpdateCloudFrontOriginAccessIdentityInput

type UpdateCloudFrontOriginAccessIdentityInput struct {

	// The identity's configuration information.
	//
	// CloudFrontOriginAccessIdentityConfig is a required field
	CloudFrontOriginAccessIdentityConfig *OriginAccessIdentityConfig `locationName:"CloudFrontOriginAccessIdentityConfig" type:"structure" required:"true"`

	// 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 you received when retrieving the identity's
	// configuration. For example: E2QWRUHAPOMQZL.
	IfMatch *string `location:"header" locationName:"If-Match" type:"string"`
	// contains filtered or unexported fields
}

The request to update an origin access identity.

func (UpdateCloudFrontOriginAccessIdentityInput) GoString

GoString returns the string representation

func (UpdateCloudFrontOriginAccessIdentityInput) String

String returns the string representation

func (*UpdateCloudFrontOriginAccessIdentityInput) Validate

Validate inspects the fields of the type to determine if they are valid.

type UpdateCloudFrontOriginAccessIdentityOutput

type UpdateCloudFrontOriginAccessIdentityOutput struct {

	// 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"`
	// contains filtered or unexported fields
}

The returned result of the corresponding request.

func (UpdateCloudFrontOriginAccessIdentityOutput) GoString

GoString returns the string representation

func (UpdateCloudFrontOriginAccessIdentityOutput) String

String returns the string representation

type UpdateDistributionInput

type UpdateDistributionInput struct {

	// The distribution's configuration information.
	//
	// DistributionConfig is a required field
	DistributionConfig *DistributionConfig `locationName:"DistributionConfig" type:"structure" required:"true"`

	// 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 you received when retrieving the distribution's
	// configuration. For example: E2QWRUHAPOMQZL.
	IfMatch *string `location:"header" locationName:"If-Match" type:"string"`
	// contains filtered or unexported fields
}

The request to update a distribution.

func (UpdateDistributionInput) GoString

func (s UpdateDistributionInput) GoString() string

GoString returns the string representation

func (UpdateDistributionInput) String

func (s UpdateDistributionInput) String() string

String returns the string representation

func (*UpdateDistributionInput) Validate

func (s *UpdateDistributionInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type UpdateDistributionOutput

type UpdateDistributionOutput struct {

	// 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"`
	// contains filtered or unexported fields
}

The returned result of the corresponding request.

func (UpdateDistributionOutput) GoString

func (s UpdateDistributionOutput) GoString() string

GoString returns the string representation

func (UpdateDistributionOutput) String

func (s UpdateDistributionOutput) String() string

String returns the string representation

type UpdateStreamingDistributionInput

type UpdateStreamingDistributionInput struct {

	// 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 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"`
	// contains filtered or unexported fields
}

The request to update a streaming distribution.

func (UpdateStreamingDistributionInput) GoString

GoString returns the string representation

func (UpdateStreamingDistributionInput) String

String returns the string representation

func (*UpdateStreamingDistributionInput) Validate

Validate inspects the fields of the type to determine if they are valid.

type UpdateStreamingDistributionOutput

type UpdateStreamingDistributionOutput struct {

	// 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"`
	// contains filtered or unexported fields
}

The returned result of the corresponding request.

func (UpdateStreamingDistributionOutput) GoString

GoString returns the string representation

func (UpdateStreamingDistributionOutput) String

String returns the string representation

type ViewerCertificate

type ViewerCertificate struct {

	// If you want viewers to use HTTPS to request your objects and you're using
	// an alternate domain name in your object URLs (for example, https://example.com/logo.jpg),
	// specify the ACM certificate ARN of the custom viewer certificate for this
	// distribution. Specify either this value, IAMCertificateId, or CloudFrontDefaultCertificate.
	ACMCertificateArn *string `type:"string"`

	// Note: this field is deprecated. Please use one of [ACMCertificateArn, IAMCertificateId,
	// CloudFrontDefaultCertificate].
	Certificate *string `deprecated:"true" type:"string"`

	// Note: this field is deprecated. Please use one of [ACMCertificateArn, IAMCertificateId,
	// CloudFrontDefaultCertificate].
	CertificateSource *string `deprecated:"true" type:"string" enum:"CertificateSource"`

	// If you want viewers to use HTTPS to request your objects and you're using
	// the CloudFront domain name of your distribution in your object URLs (for
	// example, https://d111111abcdef8.cloudfront.net/logo.jpg), set to true. Omit
	// this value if you are setting an ACMCertificateArn or IAMCertificateId.
	CloudFrontDefaultCertificate *bool `type:"boolean"`

	// If you want viewers to use HTTPS to request your objects and you're using
	// an alternate domain name in your object URLs (for example, https://example.com/logo.jpg),
	// specify the IAM certificate identifier of the custom viewer certificate for
	// this distribution. Specify either this value, ACMCertificateArn, or CloudFrontDefaultCertificate.
	IAMCertificateId *string `type:"string"`

	// Specify the minimum version of the SSL protocol that you want CloudFront
	// to use, SSLv3 or TLSv1, for HTTPS connections. CloudFront will serve your
	// objects only to browsers or devices that support at least the SSL version
	// that you specify. The TLSv1 protocol is more secure, so we recommend that
	// you specify SSLv3 only if your users are using browsers or devices that don't
	// support TLSv1. If you're using a custom certificate (if you specify a value
	// for IAMCertificateId) and if you're using dedicated IP (if you specify vip
	// for SSLSupportMethod), you can choose SSLv3 or TLSv1 as the MinimumProtocolVersion.
	// If you're using a custom certificate (if you specify a value for IAMCertificateId)
	// and if you're using SNI (if you specify sni-only for SSLSupportMethod), you
	// must specify TLSv1 for MinimumProtocolVersion.
	MinimumProtocolVersion *string `type:"string" enum:"MinimumProtocolVersion"`

	// If you specify a value for IAMCertificateId, you must also specify how you
	// want CloudFront to serve HTTPS requests. Valid values are vip and sni-only.
	// If you specify vip, CloudFront uses dedicated IP addresses for your content
	// and can respond to HTTPS requests from any viewer. However, you must request
	// permission to use this feature, and you incur additional monthly charges.
	// If you specify sni-only, CloudFront can only 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. Do not specify a value
	// for SSLSupportMethod if you specified true for CloudFrontDefaultCertificate.
	SSLSupportMethod *string `type:"string" enum:"SSLSupportMethod"`
	// contains filtered or unexported fields
}

A complex type that contains information about viewer certificates for this distribution.

func (ViewerCertificate) GoString

func (s ViewerCertificate) GoString() string

GoString returns the string representation

func (ViewerCertificate) String

func (s ViewerCertificate) String() string

String returns the string representation

Directories

Path Synopsis
Package cloudfrontiface provides an interface to enable mocking the Amazon CloudFront service client for testing your code.
Package cloudfrontiface provides an interface to enable mocking the Amazon CloudFront service client for testing your code.
Package sign provides utilities to generate signed URLs for Amazon CloudFront.
Package sign provides utilities to generate signed URLs for Amazon CloudFront.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL