-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Amazon CloudFront SDK. -- -- The types from this library are intended to be used with -- amazonka, which provides mechanisms for specifying AuthN/AuthZ -- information, sending requests, and receiving responses. -- -- Lenses are used for constructing and manipulating types, due to the -- depth of nesting of AWS types and transparency regarding -- de/serialisation into more palatable Haskell values. The provided -- lenses should be compatible with any of the major lens libraries such -- as lens or lens-family-core. -- -- See Network.AWS.CloudFront or the AWS documentation to -- get started. @package amazonka-cloudfront @version 1.6.0 module Network.AWS.CloudFront.Types -- | API version 2017-10-30 of the Amazon CloudFront SDK -- configuration. cloudFront :: Service -- | Prism for TooManyOriginCustomHeaders' errors. _TooManyOriginCustomHeaders :: AsError a => Getting (First ServiceError) a ServiceError -- | Prism for InvalidTagging' errors. _InvalidTagging :: AsError a => Getting (First ServiceError) a ServiceError -- | Prism for InvalidErrorCode' errors. _InvalidErrorCode :: AsError a => Getting (First ServiceError) a ServiceError -- | The specified profile for field-level encryption doesn't exist. _NoSuchFieldLevelEncryptionProfile :: AsError a => Getting (First ServiceError) a ServiceError -- | The specified profile for field-level encryption is in use. _FieldLevelEncryptionProfileInUse :: AsError a => Getting (First ServiceError) a ServiceError -- | Prism for InvalidOriginReadTimeout' errors. _InvalidOriginReadTimeout :: AsError a => Getting (First ServiceError) a ServiceError -- | The maximum number of profiles for field-level encryption have been -- created. _TooManyFieldLevelEncryptionProfiles :: AsError a => Getting (First ServiceError) a ServiceError -- | You cannot create more cache behaviors for the distribution. _TooManyCacheBehaviors :: AsError a => Getting (First ServiceError) a ServiceError -- | Processing your request would cause you to exceed the maximum number -- of origin access identities allowed. _TooManyCloudFrontOriginAccessIdentities :: AsError a => Getting (First ServiceError) a ServiceError -- | The origin access identity is not valid or doesn't exist. _InvalidOriginAccessIdentity :: AsError a => Getting (First ServiceError) a ServiceError -- | Prism for DistributionNotDisabled' errors. _DistributionNotDisabled :: AsError a => Getting (First ServiceError) a ServiceError -- | The specified streaming distribution does not exist. _NoSuchStreamingDistribution :: AsError a => Getting (First ServiceError) a ServiceError -- | The value of Quantity and the size of Items don't -- match. _InconsistentQuantities :: AsError a => Getting (First ServiceError) a ServiceError -- | The argument is invalid. _InvalidArgument :: AsError a => Getting (First ServiceError) a ServiceError -- | Prism for InvalidOriginKeepaliveTimeout' errors. _InvalidOriginKeepaliveTimeout :: AsError a => Getting (First ServiceError) a ServiceError -- | You have exceeded the maximum number of allowable InProgress -- invalidation batch requests, or invalidation objects. _TooManyInvalidationsInProgress :: AsError a => Getting (First ServiceError) a ServiceError -- | Prism for InvalidWebACLId' errors. _InvalidWebACLId :: AsError a => Getting (First ServiceError) a ServiceError -- | Prism for TooManyQueryStringParameters' errors. _TooManyQueryStringParameters :: AsError a => Getting (First ServiceError) a ServiceError -- | The maximum number of query arg profiles for field-level encryption -- have been created. _TooManyFieldLevelEncryptionQueryArgProfiles :: AsError a => Getting (First ServiceError) a ServiceError -- | Your request contains more CNAMEs than are allowed per distribution. _TooManyDistributionCNAMEs :: AsError a => Getting (First ServiceError) a ServiceError -- | The specified origin access identity does not exist. _NoSuchCloudFrontOriginAccessIdentity :: AsError a => Getting (First ServiceError) a ServiceError -- | Prism for CloudFrontOriginAccessIdentityInUse' errors. _CloudFrontOriginAccessIdentityInUse :: AsError a => Getting (First ServiceError) a ServiceError -- | Processing your request would cause you to exceed the maximum number -- of streaming distributions allowed. _TooManyStreamingDistributions :: AsError a => Getting (First ServiceError) a ServiceError -- | You can't change the value of a public key. _CannotChangeImmutablePublicKeyFields :: AsError a => Getting (First ServiceError) a ServiceError -- | Prism for BatchTooLarge' errors. _BatchTooLarge :: AsError a => Getting (First ServiceError) a ServiceError -- | Your request contains more cookie names in the whitelist than are -- allowed per cache behavior. _TooManyCookieNamesInWhiteList :: AsError a => Getting (First ServiceError) a ServiceError -- | The specified Lambda function association is invalid. _InvalidLambdaFunctionAssociation :: AsError a => Getting (First ServiceError) a ServiceError -- | Your request contains forward cookies option which doesn't match with -- the expectation for the whitelisted list of cookie names. -- Either list of cookie names has been specified when not allowed or -- list of cookie names is missing when expected. _InvalidForwardCookies :: AsError a => Getting (First ServiceError) a ServiceError -- | The specified configuration for field-level encryption is in use. _FieldLevelEncryptionConfigInUse :: AsError a => Getting (First ServiceError) a ServiceError -- | Your request contains more trusted signers than are allowed per -- distribution. _TooManyTrustedSigners :: AsError a => Getting (First ServiceError) a ServiceError -- | The Amazon S3 origin server specified does not refer to a valid Amazon -- S3 bucket. _InvalidOrigin :: AsError a => Getting (First ServiceError) a ServiceError -- | The specified invalidation does not exist. _NoSuchInvalidation :: AsError a => Getting (First ServiceError) a ServiceError -- | The specified public key already exists. _PublicKeyAlreadyExists :: AsError a => Getting (First ServiceError) a ServiceError -- | No origin exists with the specified Origin Id . _NoSuchOrigin :: AsError a => Getting (First ServiceError) a ServiceError -- | Prism for InvalidTTLOrder' errors. _InvalidTTLOrder :: AsError a => Getting (First ServiceError) a ServiceError -- | Prism for StreamingDistributionNotDisabled' errors. _StreamingDistributionNotDisabled :: AsError a => Getting (First ServiceError) a ServiceError -- | Prism for TooManyHeadersInForwardedValues' errors. _TooManyHeadersInForwardedValues :: AsError a => Getting (First ServiceError) a ServiceError -- | Prism for NoSuchResource' errors. _NoSuchResource :: AsError a => Getting (First ServiceError) a ServiceError -- | The maximum number of encryption entities for field-level encryption -- have been created. _TooManyFieldLevelEncryptionEncryptionEntities :: AsError a => Getting (First ServiceError) a ServiceError -- | Prism for TooManyStreamingDistributionCNAMEs' errors. _TooManyStreamingDistributionCNAMEs :: AsError a => Getting (First ServiceError) a ServiceError -- | The specified profile for field-level encryption already exists. _FieldLevelEncryptionProfileAlreadyExists :: AsError a => Getting (First ServiceError) a ServiceError -- | Prism for ResourceInUse' errors. _ResourceInUse :: AsError a => Getting (First ServiceError) a ServiceError -- | This operation requires the HTTPS protocol. Ensure that you specify -- the HTTPS protocol in your request, or omit the -- RequiredProtocols element from your distribution -- configuration. _InvalidRequiredProtocol :: AsError a => Getting (First ServiceError) a ServiceError -- | Processing your request would cause you to exceed the maximum number -- of distributions allowed. _TooManyDistributions :: AsError a => Getting (First ServiceError) a ServiceError -- | You cannot create anymore custom SSL/TLS certificates. _TooManyCertificates :: AsError a => Getting (First ServiceError) a ServiceError -- | The caller reference you attempted to create the distribution with is -- associated with another distribution. _DistributionAlreadyExists :: AsError a => Getting (First ServiceError) a ServiceError -- | The maximum number of distributions have been associated with the -- specified configuration for field-level encryption. _TooManyDistributionsAssociatedToFieldLevelEncryptionConfig :: AsError a => Getting (First ServiceError) a ServiceError -- | Prism for InvalidQueryStringParameters' errors. _InvalidQueryStringParameters :: AsError a => Getting (First ServiceError) a ServiceError -- | This operation requires a body. Ensure that the body is present and -- the Content-Type header is set. _MissingBody :: AsError a => Getting (First ServiceError) a ServiceError -- | The specified configuration for field-level encryption can't be -- associated with the specified cache behavior. _IllegalFieldLevelEncryptionConfigAssociationWithCacheBehavior :: AsError a => Getting (First ServiceError) a ServiceError -- | Origin and CallerReference cannot be updated. _IllegalUpdate :: AsError a => Getting (First ServiceError) a ServiceError -- | The If-Match version is missing or not valid for the -- distribution. _InvalidIfMatchVersion :: AsError a => Getting (First ServiceError) a ServiceError -- | The specified configuration for field-level encryption already exists. _FieldLevelEncryptionConfigAlreadyExists :: AsError a => Getting (First ServiceError) a ServiceError -- | The precondition given in one or more of the request-header fields -- evaluated to false . _PreconditionFailed :: AsError a => Getting (First ServiceError) a ServiceError -- | Prism for InvalidResponseCode' errors. _InvalidResponseCode :: AsError a => Getting (First ServiceError) a ServiceError -- | Prism for InvalidHeadersForS3Origin' errors. _InvalidHeadersForS3Origin :: AsError a => Getting (First ServiceError) a ServiceError -- | Prism for CNAMEAlreadyExists' errors. _CNAMEAlreadyExists :: AsError a => Getting (First ServiceError) a ServiceError -- | The specified public key doesn't exist. _NoSuchPublicKey :: AsError a => Getting (First ServiceError) a ServiceError -- | The specified public key is in use. _PublicKeyInUse :: AsError a => Getting (First ServiceError) a ServiceError -- | One or more of your trusted signers don't exist. _TrustedSignerDoesNotExist :: AsError a => Getting (First ServiceError) a ServiceError -- | You cannot specify SSLv3 as the minimum protocol version if you only -- want to support only clients that support Server Name Indication -- (SNI). _InvalidProtocolSettings :: AsError a => Getting (First ServiceError) a ServiceError -- | The maximum number of public keys for field-level encryption have been -- created. To create a new public key, delete one of the existing keys. _TooManyPublicKeys :: AsError a => Getting (First ServiceError) a ServiceError -- | The specified configuration for field-level encryption doesn't exist. _NoSuchFieldLevelEncryptionConfig :: AsError a => Getting (First ServiceError) a ServiceError -- | The maximum number of content type profiles for field-level encryption -- have been created. _TooManyFieldLevelEncryptionContentTypeProfiles :: AsError a => Getting (First ServiceError) a ServiceError -- | The maximum number of field patterns for field-level encryption have -- been created. _TooManyFieldLevelEncryptionFieldPatterns :: AsError a => Getting (First ServiceError) a ServiceError -- | The maximum number of configurations for field-level encryption have -- been created. _TooManyFieldLevelEncryptionConfigs :: AsError a => Getting (First ServiceError) a ServiceError -- | Your request contains more Lambda function associations than are -- allowed per distribution. _TooManyLambdaFunctionAssociations :: AsError a => Getting (First ServiceError) a ServiceError -- | 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. _CloudFrontOriginAccessIdentityAlreadyExists :: AsError a => Getting (First ServiceError) a ServiceError -- | You cannot create more origins for the distribution. _TooManyOrigins :: AsError a => Getting (First ServiceError) a ServiceError -- | The relative path is too big, is not URL-encoded, or does not begin -- with a slash (/). _InvalidRelativePath :: AsError a => Getting (First ServiceError) a ServiceError -- | Prism for StreamingDistributionAlreadyExists' errors. _StreamingDistributionAlreadyExists :: AsError a => Getting (First ServiceError) a ServiceError -- | No profile specified for the field-level encryption query argument. _QueryArgProfileEmpty :: AsError a => Getting (First ServiceError) a ServiceError -- | Prism for InvalidMinimumProtocolVersion' errors. _InvalidMinimumProtocolVersion :: AsError a => Getting (First ServiceError) a ServiceError -- | Access denied. _AccessDenied :: AsError a => Getting (First ServiceError) a ServiceError -- | Prism for InvalidViewerCertificate' errors. _InvalidViewerCertificate :: AsError a => Getting (First ServiceError) a ServiceError -- | The specified distribution does not exist. _NoSuchDistribution :: AsError a => Getting (First ServiceError) a ServiceError -- | The maximum size of a profile for field-level encryption was exceeded. _FieldLevelEncryptionProfileSizeExceeded :: AsError a => Getting (First ServiceError) a ServiceError -- | The default root object file name is too big or contains an invalid -- character. _InvalidDefaultRootObject :: AsError a => Getting (First ServiceError) a ServiceError -- | Processing your request would cause the maximum number of -- distributions with Lambda function associations per owner to be -- exceeded. _TooManyDistributionsWithLambdaAssociations :: AsError a => Getting (First ServiceError) a ServiceError -- | Prism for InvalidGeoRestrictionParameter' errors. _InvalidGeoRestrictionParameter :: AsError a => Getting (First ServiceError) a ServiceError -- | Prism for InvalidLocationCode' errors. _InvalidLocationCode :: AsError a => Getting (First ServiceError) a ServiceError data CertificateSource Acm :: CertificateSource Cloudfront :: CertificateSource IAM :: CertificateSource data EventType OriginRequest :: EventType OriginResponse :: EventType ViewerRequest :: EventType ViewerResponse :: EventType data Format URLEncoded :: Format data GeoRestrictionType Blacklist :: GeoRestrictionType None :: GeoRestrictionType Whitelist :: GeoRestrictionType data HTTPVersion HTTP1_1 :: HTTPVersion HTTP2 :: HTTPVersion data ItemSelection ISAll :: ItemSelection ISNone :: ItemSelection ISWhitelist :: ItemSelection data Method Delete :: Method Get :: Method Head :: Method Options :: Method Patch :: Method Post :: Method Put :: Method data MinimumProtocolVersion MPVSSLV3 :: MinimumProtocolVersion MPVTLSV1 :: MinimumProtocolVersion MPVTLSV12016 :: MinimumProtocolVersion MPVTLSV1_12016 :: MinimumProtocolVersion MPVTLSV1_22018 :: MinimumProtocolVersion data OriginProtocolPolicy HTTPOnly :: OriginProtocolPolicy HTTPSOnly :: OriginProtocolPolicy MatchViewer :: OriginProtocolPolicy data PriceClass PriceClass100 :: PriceClass PriceClass200 :: PriceClass PriceClassAll :: PriceClass data SSLProtocol SSLV3 :: SSLProtocol TLSV1 :: SSLProtocol TLSV1_1 :: SSLProtocol TLSV1_2 :: SSLProtocol data SSLSupportMethod SNIOnly :: SSLSupportMethod VIP :: SSLSupportMethod data ViewerProtocolPolicy VPPAllowAll :: ViewerProtocolPolicy VPPHTTPSOnly :: ViewerProtocolPolicy VPPRedirectToHTTPS :: ViewerProtocolPolicy -- | A complex type that lists the AWS accounts, if any, that you included -- in the TrustedSigners complex type for this distribution. -- These are the accounts that you want to allow to create signed URLs -- for private content. -- -- The Signer complex type lists the AWS account number of the -- trusted signer or self if the signer is the AWS account that -- created the distribution. The Signer element also includes -- the IDs of any active CloudFront key pairs that are associated with -- the trusted signer's AWS account. If no KeyPairId element -- appears for a Signer , that signer can't create signed URLs. -- -- For more information, see Serving Private Content through -- CloudFront in the Amazon CloudFront Developer Guide . -- -- See: activeTrustedSigners smart constructor. data ActiveTrustedSigners -- | Creates a value of ActiveTrustedSigners with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- activeTrustedSigners :: Bool -> Int -> ActiveTrustedSigners -- | A complex type that contains one Signer complex type for each -- trusted signer that is specified in the TrustedSigners -- complex type. For more information, see ActiveTrustedSigners . atsItems :: Lens' ActiveTrustedSigners [Signer] -- | Enabled is true if any of the AWS accounts listed in the -- TrustedSigners complex type for this RTMP distribution have -- active CloudFront key pairs. If not, Enabled is -- false . For more information, see ActiveTrustedSigners -- . atsEnabled :: Lens' ActiveTrustedSigners Bool -- | A complex type that contains one Signer complex type for each -- trusted signer specified in the TrustedSigners complex type. -- For more information, see ActiveTrustedSigners . atsQuantity :: Lens' ActiveTrustedSigners Int -- | A complex type that contains information about CNAMEs (alternate -- domain names), if any, for this distribution. -- -- See: aliases smart constructor. data Aliases -- | Creates a value of Aliases with the minimum fields required to -- make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- aliases :: Int -> Aliases -- | A complex type that contains the CNAME aliases, if any, that you want -- to associate with this distribution. aItems :: Lens' Aliases [Text] -- | The number of CNAME aliases, if any, that you want to associate with -- this distribution. aQuantity :: Lens' Aliases Int -- | 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: -- -- -- -- If you pick the third choice, you may need to restrict access to your -- Amazon S3 bucket or to your custom origin so users can't perform -- operations that you don't want them to. For example, you might not -- want users to have permissions to delete objects from your origin. -- -- See: allowedMethods smart constructor. data AllowedMethods -- | Creates a value of AllowedMethods with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- allowedMethods :: Int -> AllowedMethods -- | Undocumented member. amCachedMethods :: Lens' AllowedMethods (Maybe CachedMethods) -- | 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). amQuantity :: Lens' AllowedMethods Int -- | A complex type that contains the HTTP methods that you want CloudFront -- to process and forward to your origin. amItems :: Lens' AllowedMethods [Method] -- | A complex type that describes how CloudFront processes requests. -- -- You must create at least as many cache behaviors (including the -- default cache behavior) as you have origins if you want CloudFront to -- distribute objects from all of the origins. Each cache behavior -- specifies the one origin from which you want CloudFront to get -- objects. If you have two origins and only the default cache behavior, -- the default cache behavior will cause CloudFront to get objects from -- one of the origins, but the other origin is never used. -- -- For the current limit on the number of cache behaviors that you can -- add to a distribution, see Amazon CloudFront Limits in the -- AWS General Reference . -- -- If you don't want to specify any cache behaviors, include only an -- empty CacheBehaviors element. Don't include an empty -- CacheBehavior element, or CloudFront returns a -- MalformedXML error. -- -- To delete all cache behaviors in an existing distribution, update the -- distribution configuration and include only an empty -- CacheBehaviors element. -- -- To add, change, or remove one or more cache behaviors, update the -- distribution configuration and specify all of the cache behaviors that -- you want to include in the updated distribution. -- -- For more information about cache behaviors, see Cache Behaviors -- in the Amazon CloudFront Developer Guide . -- -- See: cacheBehavior smart constructor. data CacheBehavior -- | Creates a value of CacheBehavior with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- cacheBehavior :: Text -> Text -> ForwardedValues -> TrustedSigners -> ViewerProtocolPolicy -> Integer -> CacheBehavior -- | Undocumented member. cbAllowedMethods :: Lens' CacheBehavior (Maybe AllowedMethods) -- | A complex type that contains zero or more Lambda function associations -- for a cache behavior. cbLambdaFunctionAssociations :: Lens' CacheBehavior (Maybe LambdaFunctionAssociations) -- | The maximum amount of time that you want objects to stay in CloudFront -- caches before CloudFront forwards another request to your origin to -- determine whether the object has been updated. The value that you -- specify applies only when your origin adds HTTP headers such as -- Cache-Control max-age , Cache-Control s-maxage , and -- Expires to objects. For more information, see Specifying -- How Long Objects and Errors Stay in a CloudFront Edge Cache -- (Expiration) in the Amazon CloudFront Developer Guide . cbMaxTTL :: Lens' CacheBehavior (Maybe Integer) -- | Whether you want CloudFront to automatically compress certain files -- for this cache behavior. If so, specify true; if not, specify false. -- For more information, see Serving Compressed Files in the -- Amazon CloudFront Developer Guide . cbCompress :: Lens' CacheBehavior (Maybe Bool) -- | Indicates whether you want to distribute media files in the Microsoft -- Smooth Streaming format using the origin that is associated with this -- cache behavior. If so, specify true ; if not, specify -- false . If you specify true for -- SmoothStreaming , you can still distribute other content -- using this cache behavior if the content matches the value of -- PathPattern . cbSmoothStreaming :: Lens' CacheBehavior (Maybe Bool) -- | The default amount of time that you want objects to stay in CloudFront -- caches before CloudFront forwards another request to your origin to -- determine whether the object has been updated. The value that you -- specify applies only when your origin does not add HTTP headers such -- as Cache-Control max-age , Cache-Control s-maxage , -- and Expires to objects. For more information, see -- Specifying How Long Objects and Errors Stay in a CloudFront Edge -- Cache (Expiration) in the Amazon CloudFront Developer Guide -- . cbDefaultTTL :: Lens' CacheBehavior (Maybe Integer) -- | Undocumented member. cbFieldLevelEncryptionId :: Lens' CacheBehavior (Maybe Text) -- | The pattern (for example, images/*.jpg ) that specifies which -- requests to apply the behavior to. When CloudFront receives a viewer -- request, the requested path is compared with path patterns in the -- order in which cache behaviors are listed in the distribution. The -- path pattern for the default cache behavior is * and cannot -- be changed. If the request for an object does not match the path -- pattern for any cache behaviors, CloudFront applies the behavior in -- the default cache behavior. For more information, see Path -- Pattern in the Amazon CloudFront Developer Guide . cbPathPattern :: Lens' CacheBehavior Text -- | 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. cbTargetOriginId :: Lens' CacheBehavior Text -- | A complex type that specifies how CloudFront handles query strings and -- cookies. cbForwardedValues :: Lens' CacheBehavior ForwardedValues -- | A complex type that specifies the AWS accounts, if any, that you want -- to allow to create signed URLs for private content. If you want to -- require signed URLs in requests for objects in the target origin that -- match the PathPattern for this cache behavior, specify -- true for Enabled , and specify the applicable values -- for Quantity and Items . For more information, see -- Serving Private Content through CloudFront in the Amazon -- Amazon CloudFront Developer Guide . If you don't want to require -- signed URLs in requests for objects that match PathPattern , -- specify false for Enabled and 0 for -- Quantity . Omit Items . To add, change, or remove -- one or more trusted signers, change Enabled to true -- (if it's currently false ), change Quantity as -- applicable, and specify all of the trusted signers that you want to -- include in the updated distribution. cbTrustedSigners :: Lens' CacheBehavior TrustedSigners -- | The protocol that viewers can use to access the files in the origin -- specified by TargetOriginId when a request matches the path -- pattern in PathPattern . You can specify the following -- options: * allow-all : Viewers can use HTTP or HTTPS. * -- redirect-to-https : If a viewer submits an HTTP request, -- CloudFront returns an HTTP status code of 301 (Moved Permanently) to -- the viewer along with the HTTPS URL. The viewer then resubmits the -- request using the new URL. * https-only : If a viewer sends -- an HTTP request, CloudFront returns an HTTP status code of 403 -- (Forbidden). For more information about requiring the HTTPS protocol, -- see Using an HTTPS Connection to Access Your Objects in the -- Amazon CloudFront Developer Guide . cbViewerProtocolPolicy :: Lens' CacheBehavior ViewerProtocolPolicy -- | The minimum amount of time that you want objects to stay in CloudFront -- caches before CloudFront forwards another request to your origin to -- determine whether the object has been updated. For more information, -- see Specifying How Long Objects and Errors Stay in a CloudFront -- Edge Cache (Expiration) in the Amazon Amazon CloudFront -- Developer Guide . You must specify 0 for MinTTL -- if you configure CloudFront to forward all headers to your origin -- (under Headers , if you specify 1 for -- Quantity and * for Name ). cbMinTTL :: Lens' CacheBehavior Integer -- | A complex type that contains zero or more CacheBehavior -- elements. -- -- See: cacheBehaviors smart constructor. data CacheBehaviors -- | Creates a value of CacheBehaviors with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- cacheBehaviors :: Int -> CacheBehaviors -- | Optional: A complex type that contains cache behaviors for this -- distribution. If Quantity is 0 , you can omit -- Items . cbItems :: Lens' CacheBehaviors [CacheBehavior] -- | The number of cache behaviors for this distribution. cbQuantity :: Lens' CacheBehaviors Int -- | A complex type that controls whether CloudFront caches the response to -- requests using the specified HTTP methods. There are two choices: -- -- -- -- If you pick the second choice for your Amazon S3 Origin, you may need -- to forward Access-Control-Request-Method, -- Access-Control-Request-Headers, and Origin headers for the responses -- to be cached correctly. -- -- See: cachedMethods smart constructor. data CachedMethods -- | Creates a value of CachedMethods with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- cachedMethods :: Int -> CachedMethods -- | 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). cmQuantity :: Lens' CachedMethods Int -- | A complex type that contains the HTTP methods that you want CloudFront -- to cache responses to. cmItems :: Lens' CachedMethods [Method] -- | CloudFront origin access identity. -- -- See: cloudFrontOriginAccessIdentity smart constructor. data CloudFrontOriginAccessIdentity -- | Creates a value of CloudFrontOriginAccessIdentity with the -- minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- cloudFrontOriginAccessIdentity :: Text -> Text -> CloudFrontOriginAccessIdentity -- | The current configuration information for the identity. cfoaiCloudFrontOriginAccessIdentityConfig :: Lens' CloudFrontOriginAccessIdentity (Maybe CloudFrontOriginAccessIdentityConfig) -- | The ID for the origin access identity, for example, -- E74FTE3AJFJ256A . cfoaiId :: Lens' CloudFrontOriginAccessIdentity Text -- | The Amazon S3 canonical user ID for the origin access identity, used -- when giving the origin access identity read permission to an object in -- Amazon S3. cfoaiS3CanonicalUserId :: Lens' CloudFrontOriginAccessIdentity Text -- | Origin access identity configuration. Send a GET request to -- the /CloudFront API version CloudFrontidentity -- ID/config resource. -- -- See: cloudFrontOriginAccessIdentityConfig smart -- constructor. data CloudFrontOriginAccessIdentityConfig -- | Creates a value of CloudFrontOriginAccessIdentityConfig with -- the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- cloudFrontOriginAccessIdentityConfig :: Text -> Text -> CloudFrontOriginAccessIdentityConfig -- | A unique number that ensures the request can't be replayed. If the -- CallerReference is new (no matter the content of the -- CloudFrontOriginAccessIdentityConfig object), a new origin -- access identity is created. If the CallerReference is a value -- already sent in a previous identity request, and the content of the -- CloudFrontOriginAccessIdentityConfig is identical to the -- original request (ignoring white space), the response includes the -- same information returned to the original request. If the -- CallerReference is a value you already sent in a previous -- request to create an identity, but the content of the -- CloudFrontOriginAccessIdentityConfig is different from the -- original request, CloudFront returns a -- CloudFrontOriginAccessIdentityAlreadyExists error. cfoaicCallerReference :: Lens' CloudFrontOriginAccessIdentityConfig Text -- | Any comments you want to include about the origin access identity. cfoaicComment :: Lens' CloudFrontOriginAccessIdentityConfig Text -- | Lists the origin access identities for CloudFront.Send a GET -- request to the /CloudFront API version -- origin-access-identitycloudfront resource. The response -- includes a CloudFrontOriginAccessIdentityList element with -- zero or more CloudFrontOriginAccessIdentitySummary child -- elements. By default, your entire list of origin access identities is -- returned in one single page. If the list is long, you can paginate it -- using the MaxItems and Marker parameters. -- -- See: cloudFrontOriginAccessIdentityList smart -- constructor. data CloudFrontOriginAccessIdentityList -- | Creates a value of CloudFrontOriginAccessIdentityList with the -- minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- cloudFrontOriginAccessIdentityList :: Text -> Int -> Bool -> Int -> CloudFrontOriginAccessIdentityList -- | A complex type that contains one -- CloudFrontOriginAccessIdentitySummary element for each origin -- access identity that was created by the current AWS account. cfoailItems :: Lens' CloudFrontOriginAccessIdentityList [CloudFrontOriginAccessIdentitySummary] -- | 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. cfoailNextMarker :: Lens' CloudFrontOriginAccessIdentityList (Maybe Text) -- | 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). cfoailMarker :: Lens' CloudFrontOriginAccessIdentityList Text -- | The maximum number of origin access identities you want in the -- response body. cfoailMaxItems :: Lens' CloudFrontOriginAccessIdentityList Int -- | 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. cfoailIsTruncated :: Lens' CloudFrontOriginAccessIdentityList Bool -- | The number of CloudFront origin access identities that were created by -- the current AWS account. cfoailQuantity :: Lens' CloudFrontOriginAccessIdentityList Int -- | Summary of the information about a CloudFront origin access identity. -- -- See: cloudFrontOriginAccessIdentitySummary smart -- constructor. data CloudFrontOriginAccessIdentitySummary -- | Creates a value of CloudFrontOriginAccessIdentitySummary with -- the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- cloudFrontOriginAccessIdentitySummary :: Text -> Text -> Text -> CloudFrontOriginAccessIdentitySummary -- | The ID for the origin access identity. For example: -- E74FTE3AJFJ256A . cfoaisId :: Lens' CloudFrontOriginAccessIdentitySummary Text -- | 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. cfoaisS3CanonicalUserId :: Lens' CloudFrontOriginAccessIdentitySummary Text -- | The comment for this origin access identity, as originally specified -- when created. cfoaisComment :: Lens' CloudFrontOriginAccessIdentitySummary Text -- | A field-level encryption content type profile. -- -- See: contentTypeProfile smart constructor. data ContentTypeProfile -- | Creates a value of ContentTypeProfile with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- contentTypeProfile :: Format -> Text -> ContentTypeProfile -- | The profile ID for a field-level encryption content type-profile -- mapping. ctpProfileId :: Lens' ContentTypeProfile (Maybe Text) -- | The format for a field-level encryption content type-profile mapping. ctpFormat :: Lens' ContentTypeProfile Format -- | The content type for a field-level encryption content type-profile -- mapping. ctpContentType :: Lens' ContentTypeProfile Text -- | The configuration for a field-level encryption content type-profile -- mapping. -- -- See: contentTypeProfileConfig smart constructor. data ContentTypeProfileConfig -- | Creates a value of ContentTypeProfileConfig with the minimum -- fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- contentTypeProfileConfig :: Bool -> ContentTypeProfileConfig -- | The configuration for a field-level encryption content type-profile. ctpcContentTypeProfiles :: Lens' ContentTypeProfileConfig (Maybe ContentTypeProfiles) -- | The setting in a field-level encryption content type-profile mapping -- that specifies what to do when an unknown content type is provided for -- the profile. If true, content is forwarded without being encrypted -- when the content type is unknown. If false (the default), an error is -- returned when the content type is unknown. ctpcForwardWhenContentTypeIsUnknown :: Lens' ContentTypeProfileConfig Bool -- | Field-level encryption content type-profile. -- -- See: contentTypeProfiles smart constructor. data ContentTypeProfiles -- | Creates a value of ContentTypeProfiles with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- contentTypeProfiles :: Int -> ContentTypeProfiles -- | Items in a field-level encryption content type-profile mapping. ctpItems :: Lens' ContentTypeProfiles [ContentTypeProfile] -- | The number of field-level encryption content type-profile mappings. ctpQuantity :: Lens' ContentTypeProfiles Int -- | A complex type that specifies whether you want CloudFront to forward -- cookies to the origin and, if so, which ones. For more information -- about forwarding cookies to the origin, see How CloudFront -- Forwards, Caches, and Logs Cookies in the Amazon CloudFront -- Developer Guide . -- -- See: cookieNames smart constructor. data CookieNames -- | Creates a value of CookieNames with the minimum fields required -- to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- cookieNames :: Int -> CookieNames -- | A complex type that contains one Name element for each cookie -- that you want CloudFront to forward to the origin for this cache -- behavior. cnItems :: Lens' CookieNames [Text] -- | The number of different cookies that you want CloudFront to forward to -- the origin for this cache behavior. cnQuantity :: Lens' CookieNames Int -- | A complex type that specifies whether you want CloudFront to forward -- cookies to the origin and, if so, which ones. For more information -- about forwarding cookies to the origin, see How CloudFront -- Forwards, Caches, and Logs Cookies in the Amazon CloudFront -- Developer Guide . -- -- See: cookiePreference smart constructor. data CookiePreference -- | Creates a value of CookiePreference with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- cookiePreference :: ItemSelection -> CookiePreference -- | Required if you specify whitelist for the value of -- Forward: . A complex type that specifies how many different -- cookies you want CloudFront to forward to the origin for this cache -- behavior and, if you want to forward selected cookies, the names of -- those cookies. If you specify all or none for the value of -- Forward , omit WhitelistedNames . If you change the -- value of Forward from whitelist to all or none and -- you don't delete the WhitelistedNames element and its child -- elements, CloudFront deletes them automatically. For the current limit -- on the number of cookie names that you can whitelist for each cache -- behavior, see Amazon CloudFront Limits in the AWS General -- Reference . cpWhitelistedNames :: Lens' CookiePreference (Maybe CookieNames) -- | Specifies which cookies to forward to the origin for this cache -- behavior: all, none, or the list of cookies specified in the -- WhitelistedNames complex type. Amazon S3 doesn't process -- cookies. When the cache behavior is forwarding requests to an Amazon -- S3 origin, specify none for the Forward element. cpForward :: Lens' CookiePreference ItemSelection -- | A complex type that controls: -- -- -- -- For more information about custom error pages, see Customizing -- Error Responses in the Amazon CloudFront Developer Guide . -- -- See: customErrorResponse smart constructor. data CustomErrorResponse -- | Creates a value of CustomErrorResponse with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- customErrorResponse :: Int -> CustomErrorResponse -- | The path to the custom error page that you want CloudFront to return -- to a viewer when your origin returns the HTTP status code specified by -- ErrorCode , for example, -- 4xx-errors403-forbidden.html . If you want to store -- your objects and your custom error pages in different locations, your -- distribution must include a cache behavior for which the following is -- true: * The value of PathPattern matches the path to your -- custom error messages. For example, suppose you saved custom error -- pages for 4xx errors in an Amazon S3 bucket in a directory named -- /4xx-errors . Your distribution must include a cache behavior -- for which the path pattern routes requests for your custom error pages -- to that location, for example, 4xx-errors* . * The -- value of TargetOriginId specifies the value of the -- ID element for the origin that contains your custom error -- pages. If you specify a value for ResponsePagePath , you must -- also specify a value for ResponseCode . If you don't want to -- specify a value, include an empty element, -- ResponsePagePath , in the XML document. We recommend -- that you store custom error pages in an Amazon S3 bucket. If you store -- custom error pages on an HTTP server and the server starts to return -- 5xx errors, CloudFront can't get the files that you want to return to -- viewers because the origin server is unavailable. ceResponsePagePath :: Lens' CustomErrorResponse (Maybe Text) -- | The HTTP status code that you want CloudFront to return to the viewer -- along with the custom error page. There are a variety of reasons that -- you might want CloudFront to return a status code different from the -- status code that your origin returned to CloudFront, for example: * -- Some Internet devices (some firewalls and corporate proxies, for -- example) intercept HTTP 4xx and 5xx and prevent the response from -- being returned to the viewer. If you substitute 200 , the -- response typically won't be intercepted. * If you don't care about -- distinguishing among different client errors or server errors, you can -- specify 400 or 500 as the ResponseCode for -- all 4xx or 5xx errors. * You might want to return a 200 -- status code (OK) and static website so your customers don't know that -- your website is down. If you specify a value for ResponseCode -- , you must also specify a value for ResponsePagePath . If you -- don't want to specify a value, include an empty element, -- ResponseCode , in the XML document. ceResponseCode :: Lens' CustomErrorResponse (Maybe Text) -- | The minimum amount of time, in seconds, that you want CloudFront to -- cache the HTTP status code specified in ErrorCode . When this -- time period has elapsed, CloudFront queries your origin to see whether -- the problem that caused the error has been resolved and the requested -- object is now available. If you don't want to specify a value, include -- an empty element, ErrorCachingMinTTL , in the XML -- document. For more information, see Customizing Error Responses -- in the Amazon CloudFront Developer Guide . ceErrorCachingMinTTL :: Lens' CustomErrorResponse (Maybe Integer) -- | The HTTP status code for which you want to specify a custom error page -- and/or a caching duration. ceErrorCode :: Lens' CustomErrorResponse Int -- | A complex type that controls: -- -- -- -- For more information about custom error pages, see Customizing -- Error Responses in the Amazon CloudFront Developer Guide . -- -- See: customErrorResponses smart constructor. data CustomErrorResponses -- | Creates a value of CustomErrorResponses with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- customErrorResponses :: Int -> CustomErrorResponses -- | A complex type that contains a CustomErrorResponse element -- for each HTTP status code for which you want to specify a custom error -- page and/or a caching duration. cerItems :: Lens' CustomErrorResponses [CustomErrorResponse] -- | The number of HTTP status codes for which you want to specify a custom -- error page and/or a caching duration. If Quantity is -- 0 , you can omit Items . cerQuantity :: Lens' CustomErrorResponses Int -- | A complex type that contains the list of Custom Headers for each -- origin. -- -- See: customHeaders smart constructor. data CustomHeaders -- | Creates a value of CustomHeaders with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- customHeaders :: Int -> CustomHeaders -- | Optional : A list that contains one OriginCustomHeader -- element for each custom header that you want CloudFront to forward to -- the origin. If Quantity is 0 , omit Items . chItems :: Lens' CustomHeaders [OriginCustomHeader] -- | The number of custom headers, if any, for this distribution. chQuantity :: Lens' CustomHeaders Int -- | A customer origin. -- -- See: customOriginConfig smart constructor. data CustomOriginConfig -- | Creates a value of CustomOriginConfig with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- customOriginConfig :: Int -> Int -> OriginProtocolPolicy -> CustomOriginConfig -- | You can create a custom keep-alive timeout. All timeout units are in -- seconds. The default keep-alive timeout is 5 seconds, but you can -- configure custom timeout lengths using the CloudFront API. The minimum -- timeout length is 1 second; the maximum is 60 seconds. If you need to -- increase the maximum time limit, contact the AWS Support Center -- . cocOriginKeepaliveTimeout :: Lens' CustomOriginConfig (Maybe Int) -- | You can create a custom origin read timeout. All timeout units are in -- seconds. The default origin read timeout is 30 seconds, but you can -- configure custom timeout lengths using the CloudFront API. The minimum -- timeout length is 4 seconds; the maximum is 60 seconds. If you need to -- increase the maximum time limit, contact the AWS Support Center -- . cocOriginReadTimeout :: Lens' CustomOriginConfig (Maybe Int) -- | The SSL/TLS protocols that you want CloudFront to use when -- communicating with your origin over HTTPS. cocOriginSSLProtocols :: Lens' CustomOriginConfig (Maybe OriginSSLProtocols) -- | The HTTP port the custom origin listens on. cocHTTPPort :: Lens' CustomOriginConfig Int -- | The HTTPS port the custom origin listens on. cocHTTPSPort :: Lens' CustomOriginConfig Int -- | The origin protocol policy to apply to your origin. cocOriginProtocolPolicy :: Lens' CustomOriginConfig OriginProtocolPolicy -- | A complex type that describes the default cache behavior if you don't -- specify a CacheBehavior element or if files don't match any -- of the values of PathPattern in CacheBehavior -- elements. You must create exactly one default cache behavior. -- -- See: defaultCacheBehavior smart constructor. data DefaultCacheBehavior -- | Creates a value of DefaultCacheBehavior with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- defaultCacheBehavior :: Text -> ForwardedValues -> TrustedSigners -> ViewerProtocolPolicy -> Integer -> DefaultCacheBehavior -- | Undocumented member. dcbAllowedMethods :: Lens' DefaultCacheBehavior (Maybe AllowedMethods) -- | A complex type that contains zero or more Lambda function associations -- for a cache behavior. dcbLambdaFunctionAssociations :: Lens' DefaultCacheBehavior (Maybe LambdaFunctionAssociations) -- | Undocumented member. dcbMaxTTL :: Lens' DefaultCacheBehavior (Maybe Integer) -- | Whether you want CloudFront to automatically compress certain files -- for this cache behavior. If so, specify true ; if not, -- specify false . For more information, see Serving -- Compressed Files in the Amazon CloudFront Developer Guide . dcbCompress :: Lens' DefaultCacheBehavior (Maybe Bool) -- | Indicates whether you want to distribute media files in the Microsoft -- Smooth Streaming format using the origin that is associated with this -- cache behavior. If so, specify true ; if not, specify -- false . If you specify true for -- SmoothStreaming , you can still distribute other content -- using this cache behavior if the content matches the value of -- PathPattern . dcbSmoothStreaming :: Lens' DefaultCacheBehavior (Maybe Bool) -- | The default amount of time that you want objects to stay in CloudFront -- caches before CloudFront forwards another request to your origin to -- determine whether the object has been updated. The value that you -- specify applies only when your origin does not add HTTP headers such -- as Cache-Control max-age , Cache-Control s-maxage , -- and Expires to objects. For more information, see -- Specifying How Long Objects and Errors Stay in a CloudFront Edge -- Cache (Expiration) in the Amazon CloudFront Developer Guide -- . dcbDefaultTTL :: Lens' DefaultCacheBehavior (Maybe Integer) -- | Undocumented member. dcbFieldLevelEncryptionId :: Lens' DefaultCacheBehavior (Maybe Text) -- | 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. dcbTargetOriginId :: Lens' DefaultCacheBehavior Text -- | A complex type that specifies how CloudFront handles query strings and -- cookies. dcbForwardedValues :: Lens' DefaultCacheBehavior ForwardedValues -- | A complex type that specifies the AWS accounts, if any, that you want -- to allow to create signed URLs for private content. If you want to -- require signed URLs in requests for objects in the target origin that -- match the PathPattern for this cache behavior, specify -- true for Enabled , and specify the applicable values -- for Quantity and Items . For more information, see -- Serving Private Content through CloudFront in the Amazon -- Amazon CloudFront Developer Guide . If you don't want to require -- signed URLs in requests for objects that match PathPattern , -- specify false for Enabled and 0 for -- Quantity . Omit Items . To add, change, or remove -- one or more trusted signers, change Enabled to true -- (if it's currently false ), change Quantity as -- applicable, and specify all of the trusted signers that you want to -- include in the updated distribution. dcbTrustedSigners :: Lens' DefaultCacheBehavior TrustedSigners -- | The protocol that viewers can use to access the files in the origin -- specified by TargetOriginId when a request matches the path -- pattern in PathPattern . You can specify the following -- options: * allow-all : Viewers can use HTTP or HTTPS. * -- redirect-to-https : If a viewer submits an HTTP request, -- CloudFront returns an HTTP status code of 301 (Moved Permanently) to -- the viewer along with the HTTPS URL. The viewer then resubmits the -- request using the new URL. * https-only : If a viewer sends -- an HTTP request, CloudFront returns an HTTP status code of 403 -- (Forbidden). For more information about requiring the HTTPS protocol, -- see Using an HTTPS Connection to Access Your Objects in the -- Amazon CloudFront Developer Guide . dcbViewerProtocolPolicy :: Lens' DefaultCacheBehavior ViewerProtocolPolicy -- | The minimum amount of time that you want objects to stay in CloudFront -- caches before CloudFront forwards another request to your origin to -- determine whether the object has been updated. For more information, -- see Specifying How Long Objects and Errors Stay in a CloudFront -- Edge Cache (Expiration) in the Amazon Amazon CloudFront -- Developer Guide . You must specify 0 for MinTTL -- if you configure CloudFront to forward all headers to your origin -- (under Headers , if you specify 1 for -- Quantity and * for Name ). dcbMinTTL :: Lens' DefaultCacheBehavior Integer -- | The distribution's information. -- -- See: distribution smart constructor. data Distribution -- | Creates a value of Distribution with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- distribution :: Text -> Text -> Text -> UTCTime -> Int -> Text -> ActiveTrustedSigners -> DistributionConfig -> Distribution -- | The identifier for the distribution. For example: -- EDFDVBD632BHDS5 . dId :: Lens' Distribution Text -- | The ARN (Amazon Resource Name) for the distribution. For example: -- arn:aws:cloudfront::123456789012:distribution/EDFDVBD632BHDS5 -- , where 123456789012 is your AWS account ID. dARN :: Lens' Distribution Text -- | This response element indicates the current status of the -- distribution. When the status is Deployed , the -- distribution's information is fully propagated to all CloudFront edge -- locations. dStatus :: Lens' Distribution Text -- | The date and time the distribution was last modified. dLastModifiedTime :: Lens' Distribution UTCTime -- | The number of invalidation batches currently in progress. dInProgressInvalidationBatches :: Lens' Distribution Int -- | The domain name corresponding to the distribution, for example, -- d111111abcdef8.cloudfront.net . dDomainName :: Lens' Distribution Text -- | 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. dActiveTrustedSigners :: Lens' Distribution ActiveTrustedSigners -- | The current configuration information for the distribution. Send a -- GET request to the /CloudFront API version -- distribution IDconfig resource. dDistributionConfig :: Lens' Distribution DistributionConfig -- | A distribution configuration. -- -- See: distributionConfig smart constructor. data DistributionConfig -- | Creates a value of DistributionConfig with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- distributionConfig :: Text -> Origins -> DefaultCacheBehavior -> Text -> Bool -> DistributionConfig -- | (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 HTTP2 -- automatically use an earlier HTTP version. For viewers and CloudFront -- to use HTTP2, viewers must support TLS 1.2 or later, and must -- support Server Name Identification (SNI). In general, configuring -- CloudFront to communicate with viewers using HTTP2 reduces latency. -- You can improve performance by optimizing for HTTP2. For more -- information, do an Internet search for "http/2 optimization." dcHTTPVersion :: Lens' DistributionConfig (Maybe HTTPVersion) -- | A complex type that contains information about CNAMEs (alternate -- domain names), if any, for this distribution. dcAliases :: Lens' DistributionConfig (Maybe Aliases) -- | The object that you want CloudFront to request from your origin (for -- example, index.html ) when a viewer requests the root URL for -- your distribution (http://www.example.com ) instead of -- an object in your distribution -- (http://www.example.com/product-description.html ). -- Specifying a default root object avoids exposing the contents of your -- distribution. Specify only the object name, for example, -- index.html . Don't add a / before the object name. -- If you don't want to specify a default root object when you create a -- distribution, include an empty DefaultRootObject element. To -- delete the default root object from an existing distribution, update -- the distribution configuration and include an empty -- DefaultRootObject element. To replace the default root -- object, update the distribution configuration and specify the new -- object. For more information about the default root object, see -- Creating a Default Root Object in the Amazon CloudFront -- Developer Guide . dcDefaultRootObject :: Lens' DistributionConfig (Maybe Text) -- | The price class that corresponds with the maximum price that you want -- to pay for CloudFront service. If you specify PriceClass_All -- , CloudFront responds to requests for your objects from all CloudFront -- edge locations. If you specify a price class other than -- PriceClass_All , CloudFront serves your objects from the -- CloudFront edge location that has the lowest latency among the edge -- locations in your price class. Viewers who are in or near regions that -- are excluded from your specified price class may encounter slower -- performance. For more information about price classes, see Choosing -- the Price Class for a CloudFront Distribution in the Amazon -- CloudFront Developer Guide . For information about CloudFront -- pricing, including how price classes map to CloudFront regions, see -- Amazon CloudFront Pricing . dcPriceClass :: Lens' DistributionConfig (Maybe PriceClass) -- | A complex type that controls the following: * Whether CloudFront -- replaces HTTP status codes in the 4xx and 5xx range with custom error -- messages before returning the response to the viewer. * How long -- CloudFront caches HTTP status codes in the 4xx and 5xx range. For more -- information about custom error pages, see Customizing Error -- Responses in the Amazon CloudFront Developer Guide . dcCustomErrorResponses :: Lens' DistributionConfig (Maybe CustomErrorResponses) -- | A unique identifier that specifies the AWS WAF web ACL, if any, to -- associate with this distribution. AWS WAF is a web application -- firewall that lets you monitor the HTTP and HTTPS requests that are -- forwarded to CloudFront, and lets you control access to your content. -- Based on conditions that you specify, such as the IP addresses that -- requests originate from or the values of query strings, CloudFront -- responds to requests either with the requested content or with an HTTP -- 403 status code (Forbidden). You can also configure CloudFront to -- return a custom error page when a request is blocked. For more -- information about AWS WAF, see the AWS WAF Developer Guide . dcWebACLId :: Lens' DistributionConfig (Maybe Text) -- | Undocumented member. dcViewerCertificate :: Lens' DistributionConfig (Maybe ViewerCertificate) -- | Undocumented member. dcRestrictions :: Lens' DistributionConfig (Maybe Restrictions) -- | A complex type that controls whether access logs are written for the -- distribution. For more information about logging, see Access -- Logs in the Amazon CloudFront Developer Guide . dcLogging :: Lens' DistributionConfig (Maybe LoggingConfig) -- | A complex type that contains zero or more CacheBehavior -- elements. dcCacheBehaviors :: Lens' DistributionConfig (Maybe CacheBehaviors) -- | If you want CloudFront to respond to IPv6 DNS requests with an IPv6 -- address for your distribution, specify true . If you specify -- false , CloudFront responds to IPv6 DNS requests with the DNS -- response code NOERROR and with no IP addresses. This allows -- viewers to submit a second request, for an IPv4 address for your -- distribution. In general, you should enable IPv6 if you have users on -- IPv6 networks who want to access your content. However, if you're -- using signed URLs or signed cookies to restrict access to your -- content, and if you're using a custom policy that includes the -- IpAddress parameter to restrict the IP addresses that can -- access your content, don't enable IPv6. If you want to restrict access -- to some content by IP address and not restrict access to other content -- (or restrict access but not by IP address), you can create two -- distributions. For more information, see Creating a Signed URL -- Using a Custom Policy in the Amazon CloudFront Developer -- Guide . If you're using an Amazon Route 53 alias resource record -- set to route traffic to your CloudFront distribution, you need to -- create a second alias resource record set when both of the following -- are true: * You enable IPv6 for the distribution * You're using -- alternate domain names in the URLs for your objects For more -- information, see Routing Traffic to an Amazon CloudFront Web -- Distribution by Using Your Domain Name in the Amazon Route 53 -- Developer Guide . If you created a CNAME resource record set, -- either with Amazon Route 53 or with another DNS service, you don't -- need to make any changes. A CNAME record will route traffic to your -- distribution regardless of the IP address format of the viewer -- request. dcIsIPV6Enabled :: Lens' DistributionConfig (Maybe Bool) -- | A unique value (for example, a date-time stamp) that ensures that the -- request can't be replayed. If the value of CallerReference is -- new (regardless of the content of the DistributionConfig -- object), CloudFront creates a new distribution. If -- CallerReference is a value you already sent in a previous -- request to create a distribution, and if the content of the -- DistributionConfig is identical to the original request -- (ignoring white space), CloudFront returns the same the response that -- it returned to the original request. If CallerReference is a -- value you already sent in a previous request to create a distribution -- but the content of the DistributionConfig is different from -- the original request, CloudFront returns a -- DistributionAlreadyExists error. dcCallerReference :: Lens' DistributionConfig Text -- | A complex type that contains information about origins for this -- distribution. dcOrigins :: Lens' DistributionConfig Origins -- | A complex type that describes the default cache behavior if you don't -- specify a CacheBehavior element or if files don't match any -- of the values of PathPattern in CacheBehavior -- elements. You must create exactly one default cache behavior. dcDefaultCacheBehavior :: Lens' DistributionConfig DefaultCacheBehavior -- | Any comments you want to include about the distribution. If you don't -- want to specify a comment, include an empty Comment element. -- To delete an existing comment, update the distribution configuration -- and include an empty Comment element. To add or change a -- comment, update the distribution configuration and specify the new -- comment. dcComment :: Lens' DistributionConfig Text -- | From this field, you can enable or disable the selected distribution. -- If you specify false for Enabled but you specify -- values for Bucket and Prefix , the values are -- automatically deleted. dcEnabled :: Lens' DistributionConfig Bool -- | A distribution Configuration and a list of tags to be associated with -- the distribution. -- -- See: distributionConfigWithTags smart constructor. data DistributionConfigWithTags -- | Creates a value of DistributionConfigWithTags with the minimum -- fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- distributionConfigWithTags :: DistributionConfig -> Tags -> DistributionConfigWithTags -- | A distribution configuration. dcwtDistributionConfig :: Lens' DistributionConfigWithTags DistributionConfig -- | A complex type that contains zero or more Tag elements. dcwtTags :: Lens' DistributionConfigWithTags Tags -- | A distribution list. -- -- See: distributionList smart constructor. data DistributionList -- | Creates a value of DistributionList with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- distributionList :: Text -> Int -> Bool -> Int -> DistributionList -- | A complex type that contains one DistributionSummary element -- for each distribution that was created by the current AWS account. dlItems :: Lens' DistributionList [DistributionSummary] -- | 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. dlNextMarker :: Lens' DistributionList (Maybe Text) -- | The value you provided for the Marker request parameter. dlMarker :: Lens' DistributionList Text -- | The value you provided for the MaxItems request parameter. dlMaxItems :: Lens' DistributionList Int -- | 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. dlIsTruncated :: Lens' DistributionList Bool -- | The number of distributions that were created by the current AWS -- account. dlQuantity :: Lens' DistributionList Int -- | A summary of the information about a CloudFront distribution. -- -- See: distributionSummary smart constructor. data DistributionSummary -- | Creates a value of DistributionSummary with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- distributionSummary :: Text -> Text -> Text -> UTCTime -> Text -> Aliases -> Origins -> DefaultCacheBehavior -> CacheBehaviors -> CustomErrorResponses -> Text -> PriceClass -> Bool -> ViewerCertificate -> Restrictions -> Text -> HTTPVersion -> Bool -> DistributionSummary -- | The identifier for the distribution. For example: -- EDFDVBD632BHDS5 . dsId :: Lens' DistributionSummary Text -- | The ARN (Amazon Resource Name) for the distribution. For example: -- arn:aws:cloudfront::123456789012:distribution/EDFDVBD632BHDS5 -- , where 123456789012 is your AWS account ID. dsARN :: Lens' DistributionSummary Text -- | The current status of the distribution. When the status is -- Deployed , the distribution's information is propagated to -- all CloudFront edge locations. dsStatus :: Lens' DistributionSummary Text -- | The date and time the distribution was last modified. dsLastModifiedTime :: Lens' DistributionSummary UTCTime -- | The domain name that corresponds to the distribution, for example, -- d111111abcdef8.cloudfront.net . dsDomainName :: Lens' DistributionSummary Text -- | A complex type that contains information about CNAMEs (alternate -- domain names), if any, for this distribution. dsAliases :: Lens' DistributionSummary Aliases -- | A complex type that contains information about origins for this -- distribution. dsOrigins :: Lens' DistributionSummary Origins -- | A complex type that describes the default cache behavior if you don't -- specify a CacheBehavior element or if files don't match any -- of the values of PathPattern in CacheBehavior -- elements. You must create exactly one default cache behavior. dsDefaultCacheBehavior :: Lens' DistributionSummary DefaultCacheBehavior -- | A complex type that contains zero or more CacheBehavior -- elements. dsCacheBehaviors :: Lens' DistributionSummary CacheBehaviors -- | A complex type that contains zero or more -- CustomErrorResponses elements. dsCustomErrorResponses :: Lens' DistributionSummary CustomErrorResponses -- | The comment originally specified when this distribution was created. dsComment :: Lens' DistributionSummary Text -- | Undocumented member. dsPriceClass :: Lens' DistributionSummary PriceClass -- | Whether the distribution is enabled to accept user requests for -- content. dsEnabled :: Lens' DistributionSummary Bool -- | Undocumented member. dsViewerCertificate :: Lens' DistributionSummary ViewerCertificate -- | Undocumented member. dsRestrictions :: Lens' DistributionSummary Restrictions -- | The Web ACL Id (if any) associated with the distribution. dsWebACLId :: Lens' DistributionSummary Text -- | 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. dsHTTPVersion :: Lens' DistributionSummary HTTPVersion -- | Whether CloudFront responds to IPv6 DNS requests with an IPv6 address -- for your distribution. dsIsIPV6Enabled :: Lens' DistributionSummary Bool -- | Complex data type for field-level encryption profiles that includes -- all of the encryption entities. -- -- See: encryptionEntities smart constructor. data EncryptionEntities -- | Creates a value of EncryptionEntities with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- encryptionEntities :: Int -> EncryptionEntities -- | An array of field patterns in a field-level encryption content -- type-profile mapping. eeItems :: Lens' EncryptionEntities [EncryptionEntity] -- | Number of field pattern items in a field-level encryption content -- type-profile mapping. eeQuantity :: Lens' EncryptionEntities Int -- | Complex data type for field-level encryption profiles that includes -- the encryption key and field pattern specifications. -- -- See: encryptionEntity smart constructor. data EncryptionEntity -- | Creates a value of EncryptionEntity with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- encryptionEntity :: Text -> Text -> FieldPatterns -> EncryptionEntity -- | The public key associated with a set of field-level encryption -- patterns, to be used when encrypting the fields that match the -- patterns. eePublicKeyId :: Lens' EncryptionEntity Text -- | The provider associated with the public key being used for encryption. -- This value must also be provided with the private key for applications -- to be able to decrypt data. eeProviderId :: Lens' EncryptionEntity Text -- | Field patterns in a field-level encryption content type profile -- specify the fields that you want to be encrypted. You can provide the -- full field name, or any beginning characters followed by a wildcard -- (*). You can't overlap field patterns. For example, you can't have -- both ABC* and AB*. Note that field patterns are case-sensitive. eeFieldPatterns :: Lens' EncryptionEntity FieldPatterns -- | A complex data type that includes the profile configurations and other -- options specified for field-level encryption. -- -- See: fieldLevelEncryption smart constructor. data FieldLevelEncryption -- | Creates a value of FieldLevelEncryption with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- fieldLevelEncryption :: Text -> UTCTime -> FieldLevelEncryptionConfig -> FieldLevelEncryption -- | The configuration ID for a field-level encryption configuration which -- includes a set of profiles that specify certain selected data fields -- to be encrypted by specific public keys. fleId :: Lens' FieldLevelEncryption Text -- | The last time the field-level encryption configuration was changed. fleLastModifiedTime :: Lens' FieldLevelEncryption UTCTime -- | A complex data type that includes the profile configurations specified -- for field-level encryption. fleFieldLevelEncryptionConfig :: Lens' FieldLevelEncryption FieldLevelEncryptionConfig -- | A complex data type that includes the profile configurations specified -- for field-level encryption. -- -- See: fieldLevelEncryptionConfig smart constructor. data FieldLevelEncryptionConfig -- | Creates a value of FieldLevelEncryptionConfig with the minimum -- fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- fieldLevelEncryptionConfig :: Text -> FieldLevelEncryptionConfig -- | A complex data type that specifies when to forward content if a -- profile isn't found and the profile that can be provided as a query -- argument in a request. flecQueryArgProfileConfig :: Lens' FieldLevelEncryptionConfig (Maybe QueryArgProfileConfig) -- | A complex data type that specifies when to forward content if a -- content type isn't recognized and profiles to use as by default in a -- request if a query argument doesn't specify a profile to use. flecContentTypeProfileConfig :: Lens' FieldLevelEncryptionConfig (Maybe ContentTypeProfileConfig) -- | An optional comment about the configuration. flecComment :: Lens' FieldLevelEncryptionConfig (Maybe Text) -- | A unique number that ensures the request can't be replayed. flecCallerReference :: Lens' FieldLevelEncryptionConfig Text -- | List of field-level encrpytion configurations. -- -- See: fieldLevelEncryptionList smart constructor. data FieldLevelEncryptionList -- | Creates a value of FieldLevelEncryptionList with the minimum -- fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- fieldLevelEncryptionList :: Int -> Int -> FieldLevelEncryptionList -- | An array of field-level encryption items. flelItems :: Lens' FieldLevelEncryptionList [FieldLevelEncryptionSummary] -- | If there are more elements to be listed, this element is present and -- contains the value that you can use for the Marker request -- parameter to continue listing your configurations where you left off. flelNextMarker :: Lens' FieldLevelEncryptionList (Maybe Text) -- | The maximum number of elements you want in the response body. flelMaxItems :: Lens' FieldLevelEncryptionList Int -- | The number of field-level encryption items. flelQuantity :: Lens' FieldLevelEncryptionList Int -- | A complex data type for field-level encryption profiles. -- -- See: fieldLevelEncryptionProfile smart constructor. data FieldLevelEncryptionProfile -- | Creates a value of FieldLevelEncryptionProfile with the minimum -- fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- fieldLevelEncryptionProfile :: Text -> UTCTime -> FieldLevelEncryptionProfileConfig -> FieldLevelEncryptionProfile -- | The ID for a field-level encryption profile configuration which -- includes a set of profiles that specify certain selected data fields -- to be encrypted by specific public keys. flepId :: Lens' FieldLevelEncryptionProfile Text -- | The last time the field-level encryption profile was updated. flepLastModifiedTime :: Lens' FieldLevelEncryptionProfile UTCTime -- | A complex data type that includes the profile name and the encryption -- entities for the field-level encryption profile. flepFieldLevelEncryptionProfileConfig :: Lens' FieldLevelEncryptionProfile FieldLevelEncryptionProfileConfig -- | A complex data type of profiles for the field-level encryption. -- -- See: fieldLevelEncryptionProfileConfig smart -- constructor. data FieldLevelEncryptionProfileConfig -- | Creates a value of FieldLevelEncryptionProfileConfig with the -- minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- fieldLevelEncryptionProfileConfig :: Text -> Text -> EncryptionEntities -> FieldLevelEncryptionProfileConfig -- | An optional comment for the field-level encryption profile. flepcComment :: Lens' FieldLevelEncryptionProfileConfig (Maybe Text) -- | Profile name for the field-level encryption profile. flepcName :: Lens' FieldLevelEncryptionProfileConfig Text -- | A unique number that ensures the request can't be replayed. flepcCallerReference :: Lens' FieldLevelEncryptionProfileConfig Text -- | A complex data type of encryption entities for the field-level -- encryption profile that include the public key ID, provider, and field -- patterns for specifying which fields to encrypt with this key. flepcEncryptionEntities :: Lens' FieldLevelEncryptionProfileConfig EncryptionEntities -- | List of field-level encryption profiles. -- -- See: fieldLevelEncryptionProfileList smart constructor. data FieldLevelEncryptionProfileList -- | Creates a value of FieldLevelEncryptionProfileList with the -- minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- fieldLevelEncryptionProfileList :: Int -> Int -> FieldLevelEncryptionProfileList -- | The field-level encryption profile items. fleplItems :: Lens' FieldLevelEncryptionProfileList [FieldLevelEncryptionProfileSummary] -- | If there are more elements to be listed, this element is present and -- contains the value that you can use for the Marker request -- parameter to continue listing your profiles where you left off. fleplNextMarker :: Lens' FieldLevelEncryptionProfileList (Maybe Text) -- | The maximum number of field-level encryption profiles you want in the -- response body. fleplMaxItems :: Lens' FieldLevelEncryptionProfileList Int -- | The number of field-level encryption profiles. fleplQuantity :: Lens' FieldLevelEncryptionProfileList Int -- | The field-level encryption profile summary. -- -- See: fieldLevelEncryptionProfileSummary smart -- constructor. data FieldLevelEncryptionProfileSummary -- | Creates a value of FieldLevelEncryptionProfileSummary with the -- minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- fieldLevelEncryptionProfileSummary :: Text -> UTCTime -> Text -> EncryptionEntities -> FieldLevelEncryptionProfileSummary -- | An optional comment for the field-level encryption profile summary. flepsComment :: Lens' FieldLevelEncryptionProfileSummary (Maybe Text) -- | ID for the field-level encryption profile summary. flepsId :: Lens' FieldLevelEncryptionProfileSummary Text -- | The time when the the field-level encryption profile summary was last -- updated. flepsLastModifiedTime :: Lens' FieldLevelEncryptionProfileSummary UTCTime -- | Name for the field-level encryption profile summary. flepsName :: Lens' FieldLevelEncryptionProfileSummary Text -- | A complex data type of encryption entities for the field-level -- encryption profile that include the public key ID, provider, and field -- patterns for specifying which fields to encrypt with this key. flepsEncryptionEntities :: Lens' FieldLevelEncryptionProfileSummary EncryptionEntities -- | A summary of a field-level encryption item. -- -- See: fieldLevelEncryptionSummary smart constructor. data FieldLevelEncryptionSummary -- | Creates a value of FieldLevelEncryptionSummary with the minimum -- fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- fieldLevelEncryptionSummary :: Text -> UTCTime -> FieldLevelEncryptionSummary -- | A summary of a query argument-profile mapping. flesQueryArgProfileConfig :: Lens' FieldLevelEncryptionSummary (Maybe QueryArgProfileConfig) -- | A summary of a content type-profile mapping. flesContentTypeProfileConfig :: Lens' FieldLevelEncryptionSummary (Maybe ContentTypeProfileConfig) -- | An optional comment about the field-level encryption item. flesComment :: Lens' FieldLevelEncryptionSummary (Maybe Text) -- | The unique ID of a field-level encryption item. flesId :: Lens' FieldLevelEncryptionSummary Text -- | The last time that the summary of field-level encryption items was -- modified. flesLastModifiedTime :: Lens' FieldLevelEncryptionSummary UTCTime -- | A complex data type that includes the field patterns to match for -- field-level encryption. -- -- See: fieldPatterns smart constructor. data FieldPatterns -- | Creates a value of FieldPatterns with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- fieldPatterns :: Int -> FieldPatterns -- | An array of the field-level encryption field patterns. fpItems :: Lens' FieldPatterns [Text] -- | The number of field-level encryption field patterns. fpQuantity :: Lens' FieldPatterns Int -- | A complex type that specifies how CloudFront handles query strings and -- cookies. -- -- See: forwardedValues smart constructor. data ForwardedValues -- | Creates a value of ForwardedValues with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- forwardedValues :: Bool -> CookiePreference -> ForwardedValues -- | A complex type that contains information about the query string -- parameters that you want CloudFront to use for caching for this cache -- behavior. fvQueryStringCacheKeys :: Lens' ForwardedValues (Maybe QueryStringCacheKeys) -- | A complex type that specifies the Headers , if any, that you -- want CloudFront to base caching on for this cache behavior. fvHeaders :: Lens' ForwardedValues (Maybe Headers) -- | Indicates whether you want CloudFront to forward query strings to the -- origin that is associated with this cache behavior and cache based on -- the query string parameters. CloudFront behavior depends on the value -- of QueryString and on the values that you specify for -- QueryStringCacheKeys , if any: If you specify true for -- QueryString and you don't specify any values for -- QueryStringCacheKeys , CloudFront forwards all query string -- parameters to the origin and caches based on all query string -- parameters. Depending on how many query string parameters and values -- you have, this can adversely affect performance because CloudFront -- must forward more requests to the origin. If you specify true for -- QueryString and you specify one or more values for -- QueryStringCacheKeys , CloudFront forwards all query string -- parameters to the origin, but it only caches based on the query string -- parameters that you specify. If you specify false for -- QueryString , CloudFront doesn't forward any query string -- parameters to the origin, and doesn't cache based on query string -- parameters. For more information, see Configuring CloudFront to -- Cache Based on Query String Parameters in the Amazon CloudFront -- Developer Guide . fvQueryString :: Lens' ForwardedValues Bool -- | A complex type that specifies whether you want CloudFront to forward -- cookies to the origin and, if so, which ones. For more information -- about forwarding cookies to the origin, see How CloudFront -- Forwards, Caches, and Logs Cookies in the Amazon CloudFront -- Developer Guide . fvCookies :: Lens' ForwardedValues CookiePreference -- | A complex type that controls the countries in which your content is -- distributed. CloudFront determines the location of your users using -- MaxMind GeoIP databases. -- -- See: geoRestriction smart constructor. data GeoRestriction -- | Creates a value of GeoRestriction with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- geoRestriction :: GeoRestrictionType -> Int -> GeoRestriction -- | A complex type that contains a Location element for each -- country in which you want CloudFront either to distribute your content -- (whitelist ) or not distribute your content -- (blacklist ). The Location element is a two-letter, -- uppercase country code for a country that you want to include in your -- blacklist or whitelist . Include one -- Location element for each country. CloudFront and -- MaxMind both use ISO 3166 country codes. For the -- current list of countries and the corresponding codes, see ISO -- 3166-1-alpha-2 code on the International Organization for -- Standardization website. You can also refer to the country list on -- the CloudFront console, which includes both country names and codes. grItems :: Lens' GeoRestriction [Text] -- | The method that you want to use to restrict distribution of your -- content by country: * none : No geo restriction is enabled, -- meaning access to content is not restricted by client geo location. * -- blacklist : The Location elements specify the -- countries in which you don't want CloudFront to distribute your -- content. * whitelist : The Location elements specify -- the countries in which you want CloudFront to distribute your content. grRestrictionType :: Lens' GeoRestriction GeoRestrictionType -- | 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 . grQuantity :: Lens' GeoRestriction Int -- | A complex type that specifies the request headers, if any, that you -- want CloudFront to base caching on for this cache behavior. -- -- For the headers that you specify, CloudFront caches separate versions -- of a specified object based on the header values in viewer requests. -- For example, suppose viewer requests for logo.jpg contain a -- custom product header that has a value of either -- acme or apex , and you configure CloudFront to cache -- your content based on values in the product header. -- CloudFront forwards the product header to the origin and -- caches the response from the origin once for each header value. For -- more information about caching based on header values, see How -- CloudFront Forwards and Caches Headers in the Amazon CloudFront -- Developer Guide . -- -- See: headers smart constructor. data Headers -- | Creates a value of Headers with the minimum fields required to -- make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- headers :: Int -> Headers -- | A list that contains one Name element for each header that -- you want CloudFront to use for caching in this cache behavior. If -- Quantity is 0 , omit Items . hItems :: Lens' Headers [Text] -- | The number of different headers that you want CloudFront to base -- caching on for this cache behavior. You can configure each cache -- behavior in a web distribution to do one of the following: * -- Forward all headers to your origin : Specify 1 for -- Quantity and * for Name . Important: -- CloudFront doesn't cache the objects that are associated with this -- cache behavior. Instead, CloudFront sends every request to the origin. -- * Forward a whitelist of headers you specify : Specify the -- number of headers that you want CloudFront to base caching on. Then -- specify the header names in Name elements. CloudFront caches -- your objects based on the values in the specified headers. * -- Forward only the default headers : Specify 0 for -- Quantity and omit Items . In this configuration, -- CloudFront doesn't cache based on the values in the request headers. -- Regardless of which option you choose, CloudFront forwards headers to -- your origin based on whether the origin is an S3 bucket or a custom -- origin. See the following documentation: * S3 bucket : See -- HTTP Request Headers That CloudFront Removes or Updates * -- Custom origin : See HTTP Request Headers and CloudFront -- Behavior hQuantity :: Lens' Headers Int -- | An invalidation. -- -- See: invalidation smart constructor. data Invalidation -- | Creates a value of Invalidation with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- invalidation :: Text -> Text -> UTCTime -> InvalidationBatch -> Invalidation -- | The identifier for the invalidation request. For example: -- IDFDVBD632BHDS5 . iId :: Lens' Invalidation Text -- | The status of the invalidation request. When the invalidation batch is -- finished, the status is Completed . iStatus :: Lens' Invalidation Text -- | The date and time the invalidation request was first made. iCreateTime :: Lens' Invalidation UTCTime -- | The current invalidation information for the batch request. iInvalidationBatch :: Lens' Invalidation InvalidationBatch -- | An invalidation batch. -- -- See: invalidationBatch smart constructor. data InvalidationBatch -- | Creates a value of InvalidationBatch with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- invalidationBatch :: Paths -> Text -> InvalidationBatch -- | A complex type that contains information about the objects that you -- want to invalidate. For more information, see Specifying the -- Objects to Invalidate in the Amazon CloudFront Developer -- Guide . ibPaths :: Lens' InvalidationBatch Paths -- | A value that you specify to uniquely identify an invalidation request. -- CloudFront uses the value to prevent you from accidentally -- resubmitting an identical request. Whenever you create a new -- invalidation request, you must specify a new value for -- CallerReference and change other values in the request as -- applicable. One way to ensure that the value of -- CallerReference is unique is to use a timestamp , -- for example, 20120301090000 . If you make a second -- invalidation request with the same value for CallerReference -- , and if the rest of the request is the same, CloudFront doesn't -- create a new invalidation request. Instead, CloudFront returns -- information about the invalidation request that you previously created -- with the same CallerReference . If CallerReference -- is a value you already sent in a previous invalidation batch request -- but the content of any Path is different from the original -- request, CloudFront returns an InvalidationBatchAlreadyExists -- error. ibCallerReference :: Lens' InvalidationBatch Text -- | The InvalidationList complex type describes the list of -- invalidation objects. For more information about invalidation, see -- Invalidating Objects (Web Distributions Only) in the Amazon -- CloudFront Developer Guide . -- -- See: invalidationList smart constructor. data InvalidationList -- | Creates a value of InvalidationList with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- invalidationList :: Text -> Int -> Bool -> Int -> InvalidationList -- | A complex type that contains one InvalidationSummary element -- for each invalidation batch created by the current AWS account. ilItems :: Lens' InvalidationList [InvalidationSummary] -- | If IsTruncated is true , this element is present and -- contains the value that you can use for the Marker request -- parameter to continue listing your invalidation batches where they -- left off. ilNextMarker :: Lens' InvalidationList (Maybe Text) -- | The value that you provided for the Marker request parameter. ilMarker :: Lens' InvalidationList Text -- | The value that you provided for the MaxItems request -- parameter. ilMaxItems :: Lens' InvalidationList Int -- | 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. ilIsTruncated :: Lens' InvalidationList Bool -- | The number of invalidation batches that were created by the current -- AWS account. ilQuantity :: Lens' InvalidationList Int -- | A summary of an invalidation request. -- -- See: invalidationSummary smart constructor. data InvalidationSummary -- | Creates a value of InvalidationSummary with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- invalidationSummary :: Text -> UTCTime -> Text -> InvalidationSummary -- | The unique ID for an invalidation request. isId :: Lens' InvalidationSummary Text -- | Undocumented member. isCreateTime :: Lens' InvalidationSummary UTCTime -- | The status of an invalidation request. isStatus :: Lens' InvalidationSummary Text -- | A complex type that lists the active CloudFront key pairs, if any, -- that are associated with AwsAccountNumber . -- -- For more information, see ActiveTrustedSigners . -- -- See: keyPairIds smart constructor. data KeyPairIds -- | Creates a value of KeyPairIds with the minimum fields required -- to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- keyPairIds :: Int -> KeyPairIds -- | A complex type that lists the active CloudFront key pairs, if any, -- that are associated with AwsAccountNumber . For more -- information, see ActiveTrustedSigners . kpiItems :: Lens' KeyPairIds [Text] -- | The number of active CloudFront key pairs for -- AwsAccountNumber . For more information, see -- ActiveTrustedSigners . kpiQuantity :: Lens' KeyPairIds Int -- | A complex type that contains a Lambda function association. -- -- See: lambdaFunctionAssociation smart constructor. data LambdaFunctionAssociation -- | Creates a value of LambdaFunctionAssociation with the minimum -- fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- lambdaFunctionAssociation :: Text -> EventType -> LambdaFunctionAssociation -- | The ARN of the Lambda function. You must specify the ARN of a function -- version; you can't specify a Lambda alias or $LATEST. lfaLambdaFunctionARN :: Lens' LambdaFunctionAssociation Text -- | Specifies the event type that triggers a Lambda function invocation. -- You can specify the following values: * viewer-request : The -- function executes when CloudFront receives a request from a viewer and -- before it checks to see whether the requested object is in the edge -- cache. * origin-request : The function executes only when -- CloudFront forwards a request to your origin. When the requested -- object is in the edge cache, the function doesn't execute. * -- origin-response : The function executes after CloudFront -- receives a response from the origin and before it caches the object in -- the response. When the requested object is in the edge cache, the -- function doesn't execute. If the origin returns an HTTP status code -- other than HTTP 200 (OK), the function doesn't execute. * -- viewer-response : The function executes before CloudFront -- returns the requested object to the viewer. The function executes -- regardless of whether the object was already in the edge cache. If the -- origin returns an HTTP status code other than HTTP 200 (OK), the -- function doesn't execute. lfaEventType :: Lens' LambdaFunctionAssociation EventType -- | A complex type that specifies a list of Lambda functions associations -- for a cache behavior. -- -- If you want to invoke one or more Lambda functions triggered by -- requests that match the PathPattern of the cache behavior, -- specify the applicable values for Quantity and Items -- . Note that there can be up to 4 LambdaFunctionAssociation -- items in this list (one for each possible value of EventType -- ) and each EventType can be associated with the Lambda -- function only once. -- -- If you don't want to invoke any Lambda functions for the requests that -- match PathPattern , specify 0 for Quantity -- and omit Items . -- -- See: lambdaFunctionAssociations smart constructor. data LambdaFunctionAssociations -- | Creates a value of LambdaFunctionAssociations with the minimum -- fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- lambdaFunctionAssociations :: Int -> LambdaFunctionAssociations -- | Optional : A complex type that contains -- LambdaFunctionAssociation items for this cache behavior. If -- Quantity is 0 , you can omit Items . lfaItems :: Lens' LambdaFunctionAssociations [LambdaFunctionAssociation] -- | The number of Lambda function associations for this cache behavior. lfaQuantity :: Lens' LambdaFunctionAssociations Int -- | A complex type that controls whether access logs are written for the -- distribution. -- -- See: loggingConfig smart constructor. data LoggingConfig -- | Creates a value of LoggingConfig with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- loggingConfig :: Bool -> Bool -> Text -> Text -> LoggingConfig -- | Specifies whether you want CloudFront to save access logs to an Amazon -- S3 bucket. If you don't want to enable logging when you create a -- distribution or if you want to disable logging for an existing -- distribution, specify false for Enabled , and -- specify empty Bucket and Prefix elements. If you -- specify false for Enabled but you specify values for -- Bucket , prefix , and IncludeCookies , the -- values are automatically deleted. lcEnabled :: Lens' LoggingConfig Bool -- | Specifies whether you want CloudFront to include cookies in access -- logs, specify true for IncludeCookies . If you -- choose to include cookies in logs, CloudFront logs all cookies -- regardless of how you configure the cache behaviors for this -- distribution. If you don't want to include cookies when you create a -- distribution or if you want to disable include cookies for an existing -- distribution, specify false for IncludeCookies . lcIncludeCookies :: Lens' LoggingConfig Bool -- | The Amazon S3 bucket to store the access logs in, for example, -- myawslogbucket.s3.amazonaws.com . lcBucket :: Lens' LoggingConfig Text -- | An optional string that you want CloudFront to prefix to the access -- log filenames for this distribution, for example, -- myprefix/ . If you want to enable logging, but you don't want -- to specify a prefix, you still must include an empty Prefix -- element in the Logging element. lcPrefix :: Lens' LoggingConfig Text -- | A complex type that describes the Amazon S3 bucket or the HTTP server -- (for example, a web server) from which CloudFront gets your files. You -- must create at least one origin. -- -- For the current limit on the number of origins that you can create for -- a distribution, see Amazon CloudFront Limits in the AWS -- General Reference . -- -- See: origin smart constructor. data Origin -- | Creates a value of Origin with the minimum fields required to -- make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- origin :: Text -> Text -> Origin -- | A complex type that contains names and values for the custom headers -- that you want. oCustomHeaders :: Lens' Origin (Maybe CustomHeaders) -- | A complex type that contains information about a custom origin. If the -- origin is an Amazon S3 bucket, use the S3OriginConfig element -- instead. oCustomOriginConfig :: Lens' Origin (Maybe CustomOriginConfig) -- | A complex type that contains information about the Amazon S3 origin. -- If the origin is a custom origin, use the CustomOriginConfig -- element instead. oS3OriginConfig :: Lens' Origin (Maybe S3OriginConfig) -- | An optional element that causes CloudFront to request your content -- from a directory in your Amazon S3 bucket or your custom origin. When -- you include the OriginPath element, specify the directory -- name, beginning with a / . CloudFront appends the directory -- name to the value of DomainName , for example, -- example.com/production . Do not include a / at the -- end of the directory name. For example, suppose you've specified the -- following values for your distribution: * DomainName : An -- Amazon S3 bucket named myawsbucket . * OriginPath : -- /production * CNAME : example.com When a -- user enters example.com/index.html in a browser, CloudFront -- sends a request to Amazon S3 for -- myawsbucketproductionindex.html . When a user enters -- example.comacmeindex.html in a browser, CloudFront -- sends a request to Amazon S3 for -- myawsbucketproductionacme/index.html . oOriginPath :: Lens' Origin (Maybe Text) -- | A unique identifier for the origin. The value of Id must be -- unique within the distribution. When you specify the value of -- TargetOriginId for the default cache behavior or for another -- cache behavior, you indicate the origin to which you want the cache -- behavior to route requests by specifying the value of the Id -- element for that origin. When a request matches the path pattern for -- that cache behavior, CloudFront routes the request to the specified -- origin. For more information, see Cache Behavior Settings in -- the Amazon CloudFront Developer Guide . oId :: Lens' Origin Text -- | Amazon S3 origins : The DNS name of the Amazon S3 bucket from -- which you want CloudFront to get objects for this origin, for example, -- myawsbucket.s3.amazonaws.com . Constraints for Amazon S3 -- origins: * If you configured Amazon S3 Transfer Acceleration for your -- bucket, don't specify the s3-accelerate endpoint for -- DomainName . * The bucket name must be between 3 and 63 -- characters long (inclusive). * The bucket name must contain only -- lowercase characters, numbers, periods, underscores, and dashes. * The -- bucket name must not contain adjacent periods. Custom Origins : -- The DNS domain name for the HTTP server from which you want CloudFront -- to get objects for this origin, for example, www.example.com -- . Constraints for custom origins: * DomainName must be a -- valid DNS name that contains only a-z, A-Z, 0-9, dot (.), hyphen (-), -- or underscore (_) characters. * The name cannot exceed 128 characters. oDomainName :: Lens' Origin Text -- | A complex type that contains HeaderName and -- HeaderValue elements, if any, for this distribution. -- -- See: originCustomHeader smart constructor. data OriginCustomHeader -- | Creates a value of OriginCustomHeader with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- originCustomHeader :: Text -> Text -> OriginCustomHeader -- | The name of a header that you want CloudFront to forward to your -- origin. For more information, see Forwarding Custom Headers to Your -- Origin (Web Distributions Only) in the Amazon Amazon CloudFront -- Developer Guide . ochHeaderName :: Lens' OriginCustomHeader Text -- | The value for the header that you specified in the HeaderName -- field. ochHeaderValue :: Lens' OriginCustomHeader Text -- | A complex type that contains information about the SSL/TLS protocols -- that CloudFront can use when establishing an HTTPS connection with -- your origin. -- -- See: originSSLProtocols smart constructor. data OriginSSLProtocols -- | Creates a value of OriginSSLProtocols with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- originSSLProtocols :: Int -> OriginSSLProtocols -- | The number of SSL/TLS protocols that you want to allow CloudFront to -- use when establishing an HTTPS connection with this origin. ospQuantity :: Lens' OriginSSLProtocols Int -- | A list that contains allowed SSL/TLS protocols for this distribution. ospItems :: Lens' OriginSSLProtocols [SSLProtocol] -- | A complex type that contains information about origins for this -- distribution. -- -- See: origins smart constructor. data Origins -- | Creates a value of Origins with the minimum fields required to -- make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- origins :: Int -> Origins -- | A complex type that contains origins for this distribution. oItems :: Lens' Origins (Maybe (NonEmpty Origin)) -- | The number of origins for this distribution. oQuantity :: Lens' Origins Int -- | A complex type that contains information about the objects that you -- want to invalidate. For more information, see Specifying the -- Objects to Invalidate in the Amazon CloudFront Developer -- Guide . -- -- See: paths smart constructor. data Paths -- | Creates a value of Paths with the minimum fields required to -- make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- paths :: Int -> Paths -- | A complex type that contains a list of the paths that you want to -- invalidate. pItems :: Lens' Paths [Text] -- | The number of objects that you want to invalidate. pQuantity :: Lens' Paths Int -- | A complex data type of public keys you add to CloudFront to use with -- features like field-level encryption. -- -- See: publicKey smart constructor. data PublicKey -- | Creates a value of PublicKey with the minimum fields required -- to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- publicKey :: Text -> UTCTime -> PublicKeyConfig -> PublicKey -- | A unique ID assigned to a public key you've added to CloudFront. pkId :: Lens' PublicKey Text -- | A time you added a public key to CloudFront. pkCreatedTime :: Lens' PublicKey UTCTime -- | A complex data type for a public key you add to CloudFront to use with -- features like field-level encryption. pkPublicKeyConfig :: Lens' PublicKey PublicKeyConfig -- | Information about a public key you add to CloudFront to use with -- features like field-level encryption. -- -- See: publicKeyConfig smart constructor. data PublicKeyConfig -- | Creates a value of PublicKeyConfig with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- publicKeyConfig :: Text -> Text -> Text -> PublicKeyConfig -- | An optional comment about a public key. pkcComment :: Lens' PublicKeyConfig (Maybe Text) -- | A unique number that ensures the request can't be replayed. pkcCallerReference :: Lens' PublicKeyConfig Text -- | The name for a public key you add to CloudFront to use with features -- like field-level encryption. pkcName :: Lens' PublicKeyConfig Text -- | The encoded public key that you want to add to CloudFront to use with -- features like field-level encryption. pkcEncodedKey :: Lens' PublicKeyConfig Text -- | A list of public keys you've added to CloudFront to use with features -- like field-level encryption. -- -- See: publicKeyList smart constructor. data PublicKeyList -- | Creates a value of PublicKeyList with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- publicKeyList :: Int -> Int -> PublicKeyList -- | An array of information about a public key you add to CloudFront to -- use with features like field-level encryption. pklItems :: Lens' PublicKeyList [PublicKeySummary] -- | If there are more elements to be listed, this element is present and -- contains the value that you can use for the Marker request -- parameter to continue listing your public keys where you left off. pklNextMarker :: Lens' PublicKeyList (Maybe Text) -- | The maximum number of public keys you want in the response body. pklMaxItems :: Lens' PublicKeyList Int -- | The number of public keys you added to CloudFront to use with features -- like field-level encryption. pklQuantity :: Lens' PublicKeyList Int -- | Public key information summary. -- -- See: publicKeySummary smart constructor. data PublicKeySummary -- | Creates a value of PublicKeySummary with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- publicKeySummary :: Text -> Text -> UTCTime -> Text -> PublicKeySummary -- | Comment for public key information summary. pksComment :: Lens' PublicKeySummary (Maybe Text) -- | ID for public key information summary. pksId :: Lens' PublicKeySummary Text -- | Name for public key information summary. pksName :: Lens' PublicKeySummary Text -- | Creation time for public key information summary. pksCreatedTime :: Lens' PublicKeySummary UTCTime -- | Encoded key for public key information summary. pksEncodedKey :: Lens' PublicKeySummary Text -- | Query argument-profile mapping for field-level encryption. -- -- See: queryArgProfile smart constructor. data QueryArgProfile -- | Creates a value of QueryArgProfile with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- queryArgProfile :: Text -> Text -> QueryArgProfile -- | Query argument for field-level encryption query argument-profile -- mapping. qapQueryArg :: Lens' QueryArgProfile Text -- | ID of profile to use for field-level encryption query argument-profile -- mapping qapProfileId :: Lens' QueryArgProfile Text -- | Configuration for query argument-profile mapping for field-level -- encryption. -- -- See: queryArgProfileConfig smart constructor. data QueryArgProfileConfig -- | Creates a value of QueryArgProfileConfig with the minimum -- fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- queryArgProfileConfig :: Bool -> QueryArgProfileConfig -- | Profiles specified for query argument-profile mapping for field-level -- encryption. qapcQueryArgProfiles :: Lens' QueryArgProfileConfig (Maybe QueryArgProfiles) -- | Flag to set if you want a request to be forwarded to the origin even -- if the profile specified by the field-level encryption query argument, -- fle-profile, is unknown. qapcForwardWhenQueryArgProfileIsUnknown :: Lens' QueryArgProfileConfig Bool -- | Query argument-profile mapping for field-level encryption. -- -- See: queryArgProfiles smart constructor. data QueryArgProfiles -- | Creates a value of QueryArgProfiles with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- queryArgProfiles :: Int -> QueryArgProfiles -- | Number of items for query argument-profile mapping for field-level -- encryption. qapItems :: Lens' QueryArgProfiles [QueryArgProfile] -- | Number of profiles for query argument-profile mapping for field-level -- encryption. qapQuantity :: Lens' QueryArgProfiles Int -- | See: queryStringCacheKeys smart constructor. data QueryStringCacheKeys -- | Creates a value of QueryStringCacheKeys with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- queryStringCacheKeys :: Int -> QueryStringCacheKeys -- | (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 . qsckItems :: Lens' QueryStringCacheKeys [Text] -- | The number of whitelisted query string parameters for this -- cache behavior. qsckQuantity :: Lens' QueryStringCacheKeys Int -- | A complex type that identifies ways in which you want to restrict -- distribution of your content. -- -- See: restrictions smart constructor. data Restrictions -- | Creates a value of Restrictions with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- restrictions :: GeoRestriction -> Restrictions -- | Undocumented member. rGeoRestriction :: Lens' Restrictions GeoRestriction -- | A complex type that contains information about the Amazon S3 bucket -- from which you want CloudFront to get your media files for -- distribution. -- -- See: s3Origin smart constructor. data S3Origin -- | Creates a value of S3Origin with the minimum fields required to -- make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- s3Origin :: Text -> Text -> S3Origin -- | The DNS name of the Amazon S3 origin. soDomainName :: Lens' S3Origin Text -- | The CloudFront origin access identity to associate with the RTMP -- distribution. Use an origin access identity to configure the -- distribution so that end users can only access objects in an Amazon S3 -- bucket through CloudFront. If you want end users to be able to access -- objects using either the CloudFront URL or the Amazon S3 URL, specify -- an empty OriginAccessIdentity element. To delete the origin -- access identity from an existing distribution, update the distribution -- configuration and include an empty OriginAccessIdentity -- element. To replace the origin access identity, update the -- distribution configuration and specify the new origin access identity. -- For more information, see Using an Origin Access Identity to -- Restrict Access to Your Amazon S3 Content in the Amazon Amazon -- CloudFront Developer Guide . soOriginAccessIdentity :: Lens' S3Origin Text -- | A complex type that contains information about the Amazon S3 origin. -- If the origin is a custom origin, use the CustomOriginConfig -- element instead. -- -- See: s3OriginConfig smart constructor. data S3OriginConfig -- | Creates a value of S3OriginConfig with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- s3OriginConfig :: Text -> S3OriginConfig -- | The CloudFront origin access identity to associate with the origin. -- Use an origin access identity to configure the origin so that viewers -- can only access objects in an Amazon S3 bucket through -- CloudFront. The format of the value is: -- origin-access-identitycloudfrontID-of-origin-access-identity -- where ID-of-origin-access-identity is the value that -- CloudFront returned in the ID element when you created the -- origin access identity. If you want viewers to be able to access -- objects using either the CloudFront URL or the Amazon S3 URL, specify -- an empty OriginAccessIdentity element. To delete the origin -- access identity from an existing distribution, update the distribution -- configuration and include an empty OriginAccessIdentity -- element. To replace the origin access identity, update the -- distribution configuration and specify the new origin access identity. -- For more information about the origin access identity, see Serving -- Private Content through CloudFront in the Amazon CloudFront -- Developer Guide . socOriginAccessIdentity :: Lens' S3OriginConfig Text -- | A complex type that lists the AWS accounts that were included in the -- TrustedSigners complex type, as well as their active -- CloudFront key pair IDs, if any. -- -- See: signer smart constructor. data Signer -- | Creates a value of Signer with the minimum fields required to -- make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- signer :: Signer -- | An AWS account that is included in the TrustedSigners complex -- type for this RTMP distribution. Valid values include: * self -- , which is the AWS account used to create the distribution. * An AWS -- account number. sAWSAccountNumber :: Lens' Signer (Maybe Text) -- | A complex type that lists the active CloudFront key pairs, if any, -- that are associated with AwsAccountNumber . sKeyPairIds :: Lens' Signer (Maybe KeyPairIds) -- | A streaming distribution. -- -- See: streamingDistribution smart constructor. data StreamingDistribution -- | Creates a value of StreamingDistribution with the minimum -- fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- streamingDistribution :: Text -> Text -> Text -> Text -> ActiveTrustedSigners -> StreamingDistributionConfig -> StreamingDistribution -- | The date and time that the distribution was last modified. sdLastModifiedTime :: Lens' StreamingDistribution (Maybe UTCTime) -- | The identifier for the RTMP distribution. For example: -- EGTXBD79EXAMPLE . sdId :: Lens' StreamingDistribution Text -- | Undocumented member. sdARN :: Lens' StreamingDistribution Text -- | The current status of the RTMP distribution. When the status is -- Deployed , the distribution's information is propagated to -- all CloudFront edge locations. sdStatus :: Lens' StreamingDistribution Text -- | The domain name that corresponds to the streaming distribution, for -- example, s5c39gqb8ow64r.cloudfront.net . sdDomainName :: Lens' StreamingDistribution Text -- | A complex type that lists the AWS accounts, if any, that you included -- in the TrustedSigners complex type for this distribution. -- These are the accounts that you want to allow to create signed URLs -- for private content. The Signer complex type lists the AWS -- account number of the trusted signer or self if the signer is -- the AWS account that created the distribution. The Signer -- element also includes the IDs of any active CloudFront key pairs that -- are associated with the trusted signer's AWS account. If no -- KeyPairId element appears for a Signer , that signer -- can't create signed URLs. For more information, see Serving Private -- Content through CloudFront in the Amazon CloudFront Developer -- Guide . sdActiveTrustedSigners :: Lens' StreamingDistribution ActiveTrustedSigners -- | The current configuration information for the RTMP distribution. sdStreamingDistributionConfig :: Lens' StreamingDistribution StreamingDistributionConfig -- | The RTMP distribution's configuration information. -- -- See: streamingDistributionConfig smart constructor. data StreamingDistributionConfig -- | Creates a value of StreamingDistributionConfig with the minimum -- fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- streamingDistributionConfig :: Text -> S3Origin -> Text -> TrustedSigners -> Bool -> StreamingDistributionConfig -- | A complex type that contains information about CNAMEs (alternate -- domain names), if any, for this streaming distribution. sdcAliases :: Lens' StreamingDistributionConfig (Maybe Aliases) -- | A complex type that contains information about price class for this -- streaming distribution. sdcPriceClass :: Lens' StreamingDistributionConfig (Maybe PriceClass) -- | A complex type that controls whether access logs are written for the -- streaming distribution. sdcLogging :: Lens' StreamingDistributionConfig (Maybe StreamingLoggingConfig) -- | A unique number that ensures that the request can't be replayed. If -- the CallerReference is new (no matter the content of the -- StreamingDistributionConfig object), a new streaming -- distribution is created. If the CallerReference is a value -- that you already sent in a previous request to create a streaming -- distribution, and the content of the -- StreamingDistributionConfig is identical to the original -- request (ignoring white space), the response includes the same -- information returned to the original request. If the -- CallerReference is a value that you already sent in a -- previous request to create a streaming distribution but the content of -- the StreamingDistributionConfig is different from the -- original request, CloudFront returns a -- DistributionAlreadyExists error. sdcCallerReference :: Lens' StreamingDistributionConfig Text -- | A complex type that contains information about the Amazon S3 bucket -- from which you want CloudFront to get your media files for -- distribution. sdcS3Origin :: Lens' StreamingDistributionConfig S3Origin -- | Any comments you want to include about the streaming distribution. sdcComment :: Lens' StreamingDistributionConfig Text -- | A complex type that specifies any AWS accounts that you want to permit -- to create signed URLs for private content. If you want the -- distribution to use signed URLs, include this element; if you want the -- distribution to use public URLs, remove this element. For more -- information, see Serving Private Content through CloudFront in -- the Amazon CloudFront Developer Guide . sdcTrustedSigners :: Lens' StreamingDistributionConfig TrustedSigners -- | Whether the streaming distribution is enabled to accept user requests -- for content. sdcEnabled :: Lens' StreamingDistributionConfig Bool -- | A streaming distribution Configuration and a list of tags to be -- associated with the streaming distribution. -- -- See: streamingDistributionConfigWithTags smart -- constructor. data StreamingDistributionConfigWithTags -- | Creates a value of StreamingDistributionConfigWithTags with the -- minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- streamingDistributionConfigWithTags :: StreamingDistributionConfig -> Tags -> StreamingDistributionConfigWithTags -- | A streaming distribution Configuration. sdcwtStreamingDistributionConfig :: Lens' StreamingDistributionConfigWithTags StreamingDistributionConfig -- | A complex type that contains zero or more Tag elements. sdcwtTags :: Lens' StreamingDistributionConfigWithTags Tags -- | A streaming distribution list. -- -- See: streamingDistributionList smart constructor. data StreamingDistributionList -- | Creates a value of StreamingDistributionList with the minimum -- fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- streamingDistributionList :: Text -> Int -> Bool -> Int -> StreamingDistributionList -- | A complex type that contains one StreamingDistributionSummary -- element for each distribution that was created by the current AWS -- account. sdlItems :: Lens' StreamingDistributionList [StreamingDistributionSummary] -- | If IsTruncated is true , this element is present and -- contains the value you can use for the Marker request -- parameter to continue listing your RTMP distributions where they left -- off. sdlNextMarker :: Lens' StreamingDistributionList (Maybe Text) -- | The value you provided for the Marker request parameter. sdlMarker :: Lens' StreamingDistributionList Text -- | The value you provided for the MaxItems request parameter. sdlMaxItems :: Lens' StreamingDistributionList Int -- | 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. sdlIsTruncated :: Lens' StreamingDistributionList Bool -- | The number of streaming distributions that were created by the current -- AWS account. sdlQuantity :: Lens' StreamingDistributionList Int -- | A summary of the information for an Amazon CloudFront streaming -- distribution. -- -- See: streamingDistributionSummary smart constructor. data StreamingDistributionSummary -- | Creates a value of StreamingDistributionSummary with the -- minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- streamingDistributionSummary :: Text -> Text -> Text -> UTCTime -> Text -> S3Origin -> Aliases -> TrustedSigners -> Text -> PriceClass -> Bool -> StreamingDistributionSummary -- | The identifier for the distribution, for example, -- EDFDVBD632BHDS5 . sdsId :: Lens' StreamingDistributionSummary Text -- | 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. sdsARN :: Lens' StreamingDistributionSummary Text -- | Indicates the current status of the distribution. When the status is -- Deployed , the distribution's information is fully propagated -- throughout the Amazon CloudFront system. sdsStatus :: Lens' StreamingDistributionSummary Text -- | The date and time the distribution was last modified. sdsLastModifiedTime :: Lens' StreamingDistributionSummary UTCTime -- | The domain name corresponding to the distribution, for example, -- d111111abcdef8.cloudfront.net . sdsDomainName :: Lens' StreamingDistributionSummary Text -- | A complex type that contains information about the Amazon S3 bucket -- from which you want CloudFront to get your media files for -- distribution. sdsS3Origin :: Lens' StreamingDistributionSummary S3Origin -- | A complex type that contains information about CNAMEs (alternate -- domain names), if any, for this streaming distribution. sdsAliases :: Lens' StreamingDistributionSummary Aliases -- | A complex type that specifies the AWS accounts, if any, that you want -- to allow to create signed URLs for private content. If you want to -- require signed URLs in requests for objects in the target origin that -- match the PathPattern for this cache behavior, specify -- true for Enabled , and specify the applicable values -- for Quantity and Items .If you don't want to require -- signed URLs in requests for objects that match PathPattern , -- specify false for Enabled and 0 for -- Quantity . Omit Items . To add, change, or remove -- one or more trusted signers, change Enabled to true -- (if it's currently false ), change Quantity as -- applicable, and specify all of the trusted signers that you want to -- include in the updated distribution. sdsTrustedSigners :: Lens' StreamingDistributionSummary TrustedSigners -- | The comment originally specified when this distribution was created. sdsComment :: Lens' StreamingDistributionSummary Text -- | Undocumented member. sdsPriceClass :: Lens' StreamingDistributionSummary PriceClass -- | Whether the distribution is enabled to accept end user requests for -- content. sdsEnabled :: Lens' StreamingDistributionSummary Bool -- | A complex type that controls whether access logs are written for this -- streaming distribution. -- -- See: streamingLoggingConfig smart constructor. data StreamingLoggingConfig -- | Creates a value of StreamingLoggingConfig with the minimum -- fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- streamingLoggingConfig :: Bool -> Text -> Text -> StreamingLoggingConfig -- | Specifies whether you want CloudFront to save access logs to an Amazon -- S3 bucket. If you don't want to enable logging when you create a -- streaming distribution or if you want to disable logging for an -- existing streaming distribution, specify false for -- Enabled , and specify empty Bucket and -- Prefix elements. If you specify false for -- Enabled but you specify values for Bucket and -- Prefix , the values are automatically deleted. slcEnabled :: Lens' StreamingLoggingConfig Bool -- | The Amazon S3 bucket to store the access logs in, for example, -- myawslogbucket.s3.amazonaws.com . slcBucket :: Lens' StreamingLoggingConfig Text -- | An optional string that you want CloudFront to prefix to the access -- log filenames for this streaming distribution, for example, -- myprefix/ . If you want to enable logging, but you don't want -- to specify a prefix, you still must include an empty Prefix -- element in the Logging element. slcPrefix :: Lens' StreamingLoggingConfig Text -- | A complex type that contains Tag key and Tag value. -- -- See: tag smart constructor. data Tag -- | Creates a value of Tag with the minimum fields required to make -- a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- tag :: Text -> Tag -- | 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 _ - . : / = + @ . tagValue :: Lens' Tag (Maybe Text) -- | 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 _ -- - . : / = + @ . tagKey :: Lens' Tag Text -- | A complex type that contains zero or more Tag elements. -- -- See: tagKeys smart constructor. data TagKeys -- | Creates a value of TagKeys with the minimum fields required to -- make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- tagKeys :: TagKeys -- | A complex type that contains Tag key elements. tkItems :: Lens' TagKeys [Text] -- | A complex type that contains zero or more Tag elements. -- -- See: tags smart constructor. data Tags -- | Creates a value of Tags with the minimum fields required to -- make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- tags :: Tags -- | A complex type that contains Tag elements. tItems :: Lens' Tags [Tag] -- | A complex type that specifies the AWS accounts, if any, that you want -- to allow to create signed URLs for private content. -- -- If you want to require signed URLs in requests for objects in the -- target origin that match the PathPattern for this cache -- behavior, specify true for Enabled , and specify the -- applicable values for Quantity and Items . For more -- information, see Serving Private Content through CloudFront in -- the Amazon Amazon CloudFront Developer Guide . -- -- If you don't want to require signed URLs in requests for objects that -- match PathPattern , specify false for -- Enabled and 0 for Quantity . Omit -- Items . -- -- To add, change, or remove one or more trusted signers, change -- Enabled to true (if it's currently false ), -- change Quantity as applicable, and specify all of the trusted -- signers that you want to include in the updated distribution. -- -- For more information about updating the distribution configuration, -- see DistributionConfig . -- -- See: trustedSigners smart constructor. data TrustedSigners -- | Creates a value of TrustedSigners with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- trustedSigners :: Bool -> Int -> TrustedSigners -- | Optional : A complex type that contains trusted signers for -- this cache behavior. If Quantity is 0 , you can omit -- Items . tsItems :: Lens' TrustedSigners [Text] -- | Specifies whether you want to require viewers to use signed URLs to -- access the files specified by PathPattern and -- TargetOriginId . tsEnabled :: Lens' TrustedSigners Bool -- | The number of trusted signers for this cache behavior. tsQuantity :: Lens' TrustedSigners Int -- | A complex type that specifies the following: -- -- -- -- You must specify only one of the following values: -- -- -- -- Don't specify false for CloudFrontDefaultCertificate -- . -- -- If you want viewers to use HTTP instead of HTTPS to request your -- objects : Specify the following value: -- --
--   CloudFrontDefaultCertificatetrueCloudFrontDefaultCertificate
--   
-- -- In addition, specify allow-all for -- ViewerProtocolPolicy for all of your cache behaviors. -- -- If you want viewers to use HTTPS to request your objects : -- Choose the type of certificate that you want to use based on whether -- you're using an alternate domain name for your objects or the -- CloudFront domain name: -- -- -- -- If you specify ACMCertificateArn or IAMCertificateId -- , you must also specify a value for SSLSupportMethod . -- -- If you choose to use an ACM certificate or a certificate in the IAM -- certificate store, we recommend that you use only an alternate domain -- name in your object URLs (https://example.com/logo.jpg -- ). If you use the domain name that is associated with your CloudFront -- distribution (such as -- https://d111111abcdef8.cloudfront.net/logo.jpg ) and -- the viewer supports SNI , then CloudFront behaves normally. -- However, if the browser does not support SNI, the user's experience -- depends on the value that you choose for SSLSupportMethod : -- -- -- --
--   CloudFrontDefaultCertificatetrueCloudFrontDefaultCertificate
--   
-- -- If you want viewers to use HTTPS, you must also specify one of the -- following values in your cache behaviors: -- -- -- -- You can also optionally require that CloudFront use HTTPS to -- communicate with your origin by specifying one of the following values -- for the applicable origins: -- -- -- -- For more information, see Using Alternate Domain Names and -- HTTPS in the Amazon CloudFront Developer Guide . -- -- See: viewerCertificate smart constructor. data ViewerCertificate -- | Creates a value of ViewerCertificate with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- viewerCertificate :: ViewerCertificate -- | If you specify a value for 'ViewerCertificate$ACMCertificateArn' or -- for 'ViewerCertificate$IAMCertificateId' , you must also specify how -- you want CloudFront to serve HTTPS requests: using a method that works -- for all clients or one that works for most clients: * vip : -- CloudFront uses dedicated IP addresses for your content and can -- respond to HTTPS requests from any viewer. However, you will incur -- additional monthly charges. * sni-only : CloudFront can -- respond to HTTPS requests from viewers that support Server Name -- Indication (SNI). All modern browsers support SNI, but some browsers -- still in use don't support SNI. If some of your users' browsers don't -- support SNI, we recommend that you do one of the following: * Use the -- vip option (dedicated IP addresses) instead of -- sni-only . * Use the CloudFront SSLTLS certificate instead -- of a custom certificate. This requires that you use the CloudFront -- domain name of your distribution in the URLs for your objects, for -- example, @https:d111111abcdef8.cloudfront.netlogo.png . -- * If you can control which browser your users use, upgrade the browser -- to one that supports SNI. * Use HTTP instead of HTTPS. Don't specify a -- value for SSLSupportMethod if you specified -- CloudFrontDefaultCertificatetrueCloudFrontDefaultCertificate@ -- . For more information, see Using Alternate Domain Names and -- HTTPS in the Amazon CloudFront Developer Guide . vcSSLSupportMethod :: Lens' ViewerCertificate (Maybe SSLSupportMethod) -- | For information about how and when to use ACMCertificateArn , -- see ViewerCertificate . vcACMCertificateARN :: Lens' ViewerCertificate (Maybe Text) -- | This field has been deprecated. Use one of the following fields -- instead: * 'ViewerCertificate$ACMCertificateArn' * -- 'ViewerCertificate$IAMCertificateId' * -- 'ViewerCertificate$CloudFrontDefaultCertificate' vcCertificateSource :: Lens' ViewerCertificate (Maybe CertificateSource) -- | Specify the security policy that you want CloudFront to use for HTTPS -- connections. A security policy determines two settings: * The minimum -- SSLTLS protocol that CloudFront uses to communicate with viewers * -- The cipher that CloudFront uses to encrypt the content that it returns -- to viewers We recommend that you specify TLSv1.1_2016 unless -- your users are using browsers or devices that do not support TLSv1.1 -- or later. When both of the following are true, you must specify -- TLSv1 or later for the security policy: * You're using a -- custom certificate: you specified a value for -- ACMCertificateArn or for IAMCertificateId * You're -- using SNI: you specified sni-only for -- SSLSupportMethod If you specify true for -- CloudFrontDefaultCertificate , CloudFront automatically sets -- the security policy to TLSv1 regardless of the value that you -- specify for MinimumProtocolVersion . For information about -- the relationship between the security policy that you choose and the -- protocols and ciphers that CloudFront uses to communicate with -- viewers, see -- <http:docs.aws.amazon.comAmazonCloudFrontlatestDeveloperGuidesecure-connections-supported-viewer-protocols-ciphers.html#secure-connections-supported-ciphers -- Supported SSLTLS Protocols and Ciphers for Communication Between -- Viewers and CloudFront> in the Amazon CloudFront Developer -- Guide . vcMinimumProtocolVersion :: Lens' ViewerCertificate (Maybe MinimumProtocolVersion) -- | This field has been deprecated. Use one of the following fields -- instead: * 'ViewerCertificate$ACMCertificateArn' * -- 'ViewerCertificate$IAMCertificateId' * -- 'ViewerCertificate$CloudFrontDefaultCertificate' vcCertificate :: Lens' ViewerCertificate (Maybe Text) -- | For information about how and when to use IAMCertificateId , -- see ViewerCertificate . vcIAMCertificateId :: Lens' ViewerCertificate (Maybe Text) -- | For information about how and when to use -- CloudFrontDefaultCertificate , see ViewerCertificate . vcCloudFrontDefaultCertificate :: Lens' ViewerCertificate (Maybe Bool) -- | Add tags to a CloudFront resource. module Network.AWS.CloudFront.TagResource -- | Creates a value of TagResource with the minimum fields required -- to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- tagResource :: Text -> Tags -> TagResource -- | The request to add tags to a CloudFront resource. -- -- See: tagResource smart constructor. data TagResource -- | An ARN of a CloudFront resource. trResource :: Lens' TagResource Text -- | A complex type that contains zero or more Tag elements. trTags :: Lens' TagResource Tags -- | Creates a value of TagResourceResponse with the minimum fields -- required to make a request. tagResourceResponse :: TagResourceResponse -- | See: tagResourceResponse smart constructor. data TagResourceResponse instance GHC.Generics.Generic Network.AWS.CloudFront.TagResource.TagResourceResponse instance Data.Data.Data Network.AWS.CloudFront.TagResource.TagResourceResponse instance GHC.Show.Show Network.AWS.CloudFront.TagResource.TagResourceResponse instance GHC.Read.Read Network.AWS.CloudFront.TagResource.TagResourceResponse instance GHC.Classes.Eq Network.AWS.CloudFront.TagResource.TagResourceResponse instance GHC.Generics.Generic Network.AWS.CloudFront.TagResource.TagResource instance Data.Data.Data Network.AWS.CloudFront.TagResource.TagResource instance GHC.Show.Show Network.AWS.CloudFront.TagResource.TagResource instance GHC.Read.Read Network.AWS.CloudFront.TagResource.TagResource instance GHC.Classes.Eq Network.AWS.CloudFront.TagResource.TagResource instance Network.AWS.Types.AWSRequest Network.AWS.CloudFront.TagResource.TagResource instance Control.DeepSeq.NFData Network.AWS.CloudFront.TagResource.TagResourceResponse instance Data.Hashable.Class.Hashable Network.AWS.CloudFront.TagResource.TagResource instance Control.DeepSeq.NFData Network.AWS.CloudFront.TagResource.TagResource instance Network.AWS.Data.XML.ToElement Network.AWS.CloudFront.TagResource.TagResource instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudFront.TagResource.TagResource instance Network.AWS.Data.Path.ToPath Network.AWS.CloudFront.TagResource.TagResource instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudFront.TagResource.TagResource -- | List tags for a CloudFront resource. module Network.AWS.CloudFront.ListTagsForResource -- | Creates a value of ListTagsForResource with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- listTagsForResource :: Text -> ListTagsForResource -- | The request to list tags for a CloudFront resource. -- -- See: listTagsForResource smart constructor. data ListTagsForResource -- | An ARN of a CloudFront resource. ltfrResource :: Lens' ListTagsForResource Text -- | Creates a value of ListTagsForResourceResponse with the minimum -- fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- listTagsForResourceResponse :: Int -> Tags -> ListTagsForResourceResponse -- | The returned result of the corresponding request. -- -- See: listTagsForResourceResponse smart constructor. data ListTagsForResourceResponse -- | ltfrrsResponseStatus :: Lens' ListTagsForResourceResponse Int -- | A complex type that contains zero or more Tag elements. ltfrrsTags :: Lens' ListTagsForResourceResponse Tags instance GHC.Generics.Generic Network.AWS.CloudFront.ListTagsForResource.ListTagsForResourceResponse instance Data.Data.Data Network.AWS.CloudFront.ListTagsForResource.ListTagsForResourceResponse instance GHC.Show.Show Network.AWS.CloudFront.ListTagsForResource.ListTagsForResourceResponse instance GHC.Read.Read Network.AWS.CloudFront.ListTagsForResource.ListTagsForResourceResponse instance GHC.Classes.Eq Network.AWS.CloudFront.ListTagsForResource.ListTagsForResourceResponse instance GHC.Generics.Generic Network.AWS.CloudFront.ListTagsForResource.ListTagsForResource instance Data.Data.Data Network.AWS.CloudFront.ListTagsForResource.ListTagsForResource instance GHC.Show.Show Network.AWS.CloudFront.ListTagsForResource.ListTagsForResource instance GHC.Read.Read Network.AWS.CloudFront.ListTagsForResource.ListTagsForResource instance GHC.Classes.Eq Network.AWS.CloudFront.ListTagsForResource.ListTagsForResource instance Network.AWS.Types.AWSRequest Network.AWS.CloudFront.ListTagsForResource.ListTagsForResource instance Control.DeepSeq.NFData Network.AWS.CloudFront.ListTagsForResource.ListTagsForResourceResponse instance Data.Hashable.Class.Hashable Network.AWS.CloudFront.ListTagsForResource.ListTagsForResource instance Control.DeepSeq.NFData Network.AWS.CloudFront.ListTagsForResource.ListTagsForResource instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudFront.ListTagsForResource.ListTagsForResource instance Network.AWS.Data.Path.ToPath Network.AWS.CloudFront.ListTagsForResource.ListTagsForResource instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudFront.ListTagsForResource.ListTagsForResource -- | List streaming distributions. -- -- This operation returns paginated results. module Network.AWS.CloudFront.ListStreamingDistributions -- | Creates a value of ListStreamingDistributions with the minimum -- fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- listStreamingDistributions :: ListStreamingDistributions -- | The request to list your streaming distributions. -- -- See: listStreamingDistributions smart constructor. data ListStreamingDistributions -- | The value that you provided for the Marker request parameter. lsdMarker :: Lens' ListStreamingDistributions (Maybe Text) -- | The value that you provided for the MaxItems request -- parameter. lsdMaxItems :: Lens' ListStreamingDistributions (Maybe Text) -- | Creates a value of ListStreamingDistributionsResponse with the -- minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- listStreamingDistributionsResponse :: Int -> StreamingDistributionList -> ListStreamingDistributionsResponse -- | The returned result of the corresponding request. -- -- See: listStreamingDistributionsResponse smart -- constructor. data ListStreamingDistributionsResponse -- | lsdrsResponseStatus :: Lens' ListStreamingDistributionsResponse Int -- | The StreamingDistributionList type. lsdrsStreamingDistributionList :: Lens' ListStreamingDistributionsResponse StreamingDistributionList instance GHC.Generics.Generic Network.AWS.CloudFront.ListStreamingDistributions.ListStreamingDistributionsResponse instance Data.Data.Data Network.AWS.CloudFront.ListStreamingDistributions.ListStreamingDistributionsResponse instance GHC.Show.Show Network.AWS.CloudFront.ListStreamingDistributions.ListStreamingDistributionsResponse instance GHC.Read.Read Network.AWS.CloudFront.ListStreamingDistributions.ListStreamingDistributionsResponse instance GHC.Classes.Eq Network.AWS.CloudFront.ListStreamingDistributions.ListStreamingDistributionsResponse instance GHC.Generics.Generic Network.AWS.CloudFront.ListStreamingDistributions.ListStreamingDistributions instance Data.Data.Data Network.AWS.CloudFront.ListStreamingDistributions.ListStreamingDistributions instance GHC.Show.Show Network.AWS.CloudFront.ListStreamingDistributions.ListStreamingDistributions instance GHC.Read.Read Network.AWS.CloudFront.ListStreamingDistributions.ListStreamingDistributions instance GHC.Classes.Eq Network.AWS.CloudFront.ListStreamingDistributions.ListStreamingDistributions instance Network.AWS.Types.AWSRequest Network.AWS.CloudFront.ListStreamingDistributions.ListStreamingDistributions instance Control.DeepSeq.NFData Network.AWS.CloudFront.ListStreamingDistributions.ListStreamingDistributionsResponse instance Network.AWS.Pager.AWSPager Network.AWS.CloudFront.ListStreamingDistributions.ListStreamingDistributions instance Data.Hashable.Class.Hashable Network.AWS.CloudFront.ListStreamingDistributions.ListStreamingDistributions instance Control.DeepSeq.NFData Network.AWS.CloudFront.ListStreamingDistributions.ListStreamingDistributions instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudFront.ListStreamingDistributions.ListStreamingDistributions instance Network.AWS.Data.Path.ToPath Network.AWS.CloudFront.ListStreamingDistributions.ListStreamingDistributions instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudFront.ListStreamingDistributions.ListStreamingDistributions -- | List all public keys that have been added to CloudFront for this -- account. module Network.AWS.CloudFront.ListPublicKeys -- | Creates a value of ListPublicKeys with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- listPublicKeys :: ListPublicKeys -- | See: listPublicKeys smart constructor. data ListPublicKeys -- | Use this when paginating results to indicate where to begin in your -- list of public keys. The results include public keys 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 public key -- on that page). lpkMarker :: Lens' ListPublicKeys (Maybe Text) -- | The maximum number of public keys you want in the response body. lpkMaxItems :: Lens' ListPublicKeys (Maybe Text) -- | Creates a value of ListPublicKeysResponse with the minimum -- fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- listPublicKeysResponse :: Int -> ListPublicKeysResponse -- | See: listPublicKeysResponse smart constructor. data ListPublicKeysResponse -- | Returns a list of all public keys that have been added to CloudFront -- for this account. lpkrsPublicKeyList :: Lens' ListPublicKeysResponse (Maybe PublicKeyList) -- | lpkrsResponseStatus :: Lens' ListPublicKeysResponse Int instance GHC.Generics.Generic Network.AWS.CloudFront.ListPublicKeys.ListPublicKeysResponse instance Data.Data.Data Network.AWS.CloudFront.ListPublicKeys.ListPublicKeysResponse instance GHC.Show.Show Network.AWS.CloudFront.ListPublicKeys.ListPublicKeysResponse instance GHC.Read.Read Network.AWS.CloudFront.ListPublicKeys.ListPublicKeysResponse instance GHC.Classes.Eq Network.AWS.CloudFront.ListPublicKeys.ListPublicKeysResponse instance GHC.Generics.Generic Network.AWS.CloudFront.ListPublicKeys.ListPublicKeys instance Data.Data.Data Network.AWS.CloudFront.ListPublicKeys.ListPublicKeys instance GHC.Show.Show Network.AWS.CloudFront.ListPublicKeys.ListPublicKeys instance GHC.Read.Read Network.AWS.CloudFront.ListPublicKeys.ListPublicKeys instance GHC.Classes.Eq Network.AWS.CloudFront.ListPublicKeys.ListPublicKeys instance Network.AWS.Types.AWSRequest Network.AWS.CloudFront.ListPublicKeys.ListPublicKeys instance Control.DeepSeq.NFData Network.AWS.CloudFront.ListPublicKeys.ListPublicKeysResponse instance Data.Hashable.Class.Hashable Network.AWS.CloudFront.ListPublicKeys.ListPublicKeys instance Control.DeepSeq.NFData Network.AWS.CloudFront.ListPublicKeys.ListPublicKeys instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudFront.ListPublicKeys.ListPublicKeys instance Network.AWS.Data.Path.ToPath Network.AWS.CloudFront.ListPublicKeys.ListPublicKeys instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudFront.ListPublicKeys.ListPublicKeys -- | Lists invalidation batches. -- -- This operation returns paginated results. module Network.AWS.CloudFront.ListInvalidations -- | Creates a value of ListInvalidations with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- listInvalidations :: Text -> ListInvalidations -- | The request to list invalidations. -- -- See: listInvalidations smart constructor. data ListInvalidations -- | Use this parameter when paginating results to indicate where to begin -- in your list of invalidation batches. Because the results are returned -- in decreasing order from most recent to oldest, the most recent -- results are on the first page, the second page will contain earlier -- results, and so on. To get the next page of results, set -- Marker to the value of the NextMarker from the -- current page's response. This value is the same as the ID of the last -- invalidation batch on that page. liMarker :: Lens' ListInvalidations (Maybe Text) -- | The maximum number of invalidation batches that you want in the -- response body. liMaxItems :: Lens' ListInvalidations (Maybe Text) -- | The distribution's ID. liDistributionId :: Lens' ListInvalidations Text -- | Creates a value of ListInvalidationsResponse with the minimum -- fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- listInvalidationsResponse :: Int -> InvalidationList -> ListInvalidationsResponse -- | The returned result of the corresponding request. -- -- See: listInvalidationsResponse smart constructor. data ListInvalidationsResponse -- | lirsResponseStatus :: Lens' ListInvalidationsResponse Int -- | Information about invalidation batches. lirsInvalidationList :: Lens' ListInvalidationsResponse InvalidationList instance GHC.Generics.Generic Network.AWS.CloudFront.ListInvalidations.ListInvalidationsResponse instance Data.Data.Data Network.AWS.CloudFront.ListInvalidations.ListInvalidationsResponse instance GHC.Show.Show Network.AWS.CloudFront.ListInvalidations.ListInvalidationsResponse instance GHC.Read.Read Network.AWS.CloudFront.ListInvalidations.ListInvalidationsResponse instance GHC.Classes.Eq Network.AWS.CloudFront.ListInvalidations.ListInvalidationsResponse instance GHC.Generics.Generic Network.AWS.CloudFront.ListInvalidations.ListInvalidations instance Data.Data.Data Network.AWS.CloudFront.ListInvalidations.ListInvalidations instance GHC.Show.Show Network.AWS.CloudFront.ListInvalidations.ListInvalidations instance GHC.Read.Read Network.AWS.CloudFront.ListInvalidations.ListInvalidations instance GHC.Classes.Eq Network.AWS.CloudFront.ListInvalidations.ListInvalidations instance Network.AWS.Types.AWSRequest Network.AWS.CloudFront.ListInvalidations.ListInvalidations instance Control.DeepSeq.NFData Network.AWS.CloudFront.ListInvalidations.ListInvalidationsResponse instance Network.AWS.Pager.AWSPager Network.AWS.CloudFront.ListInvalidations.ListInvalidations instance Data.Hashable.Class.Hashable Network.AWS.CloudFront.ListInvalidations.ListInvalidations instance Control.DeepSeq.NFData Network.AWS.CloudFront.ListInvalidations.ListInvalidations instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudFront.ListInvalidations.ListInvalidations instance Network.AWS.Data.Path.ToPath Network.AWS.CloudFront.ListInvalidations.ListInvalidations instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudFront.ListInvalidations.ListInvalidations -- | Request a list of field-level encryption profiles that have been -- created in CloudFront for this account. module Network.AWS.CloudFront.ListFieldLevelEncryptionProfiles -- | Creates a value of ListFieldLevelEncryptionProfiles with the -- minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- listFieldLevelEncryptionProfiles :: ListFieldLevelEncryptionProfiles -- | See: listFieldLevelEncryptionProfiles smart constructor. data ListFieldLevelEncryptionProfiles -- | Use this when paginating results to indicate where to begin in your -- list of profiles. The results include profiles 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 profile on -- that page). lflepMarker :: Lens' ListFieldLevelEncryptionProfiles (Maybe Text) -- | The maximum number of field-level encryption profiles you want in the -- response body. lflepMaxItems :: Lens' ListFieldLevelEncryptionProfiles (Maybe Text) -- | Creates a value of ListFieldLevelEncryptionProfilesResponse -- with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- listFieldLevelEncryptionProfilesResponse :: Int -> ListFieldLevelEncryptionProfilesResponse -- | See: listFieldLevelEncryptionProfilesResponse smart -- constructor. data ListFieldLevelEncryptionProfilesResponse -- | Returns a list of the field-level encryption profiles that have been -- created in CloudFront for this account. lfleprsFieldLevelEncryptionProfileList :: Lens' ListFieldLevelEncryptionProfilesResponse (Maybe FieldLevelEncryptionProfileList) -- | lfleprsResponseStatus :: Lens' ListFieldLevelEncryptionProfilesResponse Int instance GHC.Generics.Generic Network.AWS.CloudFront.ListFieldLevelEncryptionProfiles.ListFieldLevelEncryptionProfilesResponse instance Data.Data.Data Network.AWS.CloudFront.ListFieldLevelEncryptionProfiles.ListFieldLevelEncryptionProfilesResponse instance GHC.Show.Show Network.AWS.CloudFront.ListFieldLevelEncryptionProfiles.ListFieldLevelEncryptionProfilesResponse instance GHC.Read.Read Network.AWS.CloudFront.ListFieldLevelEncryptionProfiles.ListFieldLevelEncryptionProfilesResponse instance GHC.Classes.Eq Network.AWS.CloudFront.ListFieldLevelEncryptionProfiles.ListFieldLevelEncryptionProfilesResponse instance GHC.Generics.Generic Network.AWS.CloudFront.ListFieldLevelEncryptionProfiles.ListFieldLevelEncryptionProfiles instance Data.Data.Data Network.AWS.CloudFront.ListFieldLevelEncryptionProfiles.ListFieldLevelEncryptionProfiles instance GHC.Show.Show Network.AWS.CloudFront.ListFieldLevelEncryptionProfiles.ListFieldLevelEncryptionProfiles instance GHC.Read.Read Network.AWS.CloudFront.ListFieldLevelEncryptionProfiles.ListFieldLevelEncryptionProfiles instance GHC.Classes.Eq Network.AWS.CloudFront.ListFieldLevelEncryptionProfiles.ListFieldLevelEncryptionProfiles instance Network.AWS.Types.AWSRequest Network.AWS.CloudFront.ListFieldLevelEncryptionProfiles.ListFieldLevelEncryptionProfiles instance Control.DeepSeq.NFData Network.AWS.CloudFront.ListFieldLevelEncryptionProfiles.ListFieldLevelEncryptionProfilesResponse instance Data.Hashable.Class.Hashable Network.AWS.CloudFront.ListFieldLevelEncryptionProfiles.ListFieldLevelEncryptionProfiles instance Control.DeepSeq.NFData Network.AWS.CloudFront.ListFieldLevelEncryptionProfiles.ListFieldLevelEncryptionProfiles instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudFront.ListFieldLevelEncryptionProfiles.ListFieldLevelEncryptionProfiles instance Network.AWS.Data.Path.ToPath Network.AWS.CloudFront.ListFieldLevelEncryptionProfiles.ListFieldLevelEncryptionProfiles instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudFront.ListFieldLevelEncryptionProfiles.ListFieldLevelEncryptionProfiles -- | List all field-level encryption configurations that have been created -- in CloudFront for this account. module Network.AWS.CloudFront.ListFieldLevelEncryptionConfigs -- | Creates a value of ListFieldLevelEncryptionConfigs with the -- minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- listFieldLevelEncryptionConfigs :: ListFieldLevelEncryptionConfigs -- | See: listFieldLevelEncryptionConfigs smart constructor. data ListFieldLevelEncryptionConfigs -- | Use this when paginating results to indicate where to begin in your -- list of configurations. The results include configurations 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 -- configuration on that page). lflecMarker :: Lens' ListFieldLevelEncryptionConfigs (Maybe Text) -- | The maximum number of field-level encryption configurations you want -- in the response body. lflecMaxItems :: Lens' ListFieldLevelEncryptionConfigs (Maybe Text) -- | Creates a value of ListFieldLevelEncryptionConfigsResponse with -- the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- listFieldLevelEncryptionConfigsResponse :: Int -> ListFieldLevelEncryptionConfigsResponse -- | See: listFieldLevelEncryptionConfigsResponse smart -- constructor. data ListFieldLevelEncryptionConfigsResponse -- | Returns a list of all field-level encryption configurations that have -- been created in CloudFront for this account. lflecrsFieldLevelEncryptionList :: Lens' ListFieldLevelEncryptionConfigsResponse (Maybe FieldLevelEncryptionList) -- | lflecrsResponseStatus :: Lens' ListFieldLevelEncryptionConfigsResponse Int instance GHC.Generics.Generic Network.AWS.CloudFront.ListFieldLevelEncryptionConfigs.ListFieldLevelEncryptionConfigsResponse instance Data.Data.Data Network.AWS.CloudFront.ListFieldLevelEncryptionConfigs.ListFieldLevelEncryptionConfigsResponse instance GHC.Show.Show Network.AWS.CloudFront.ListFieldLevelEncryptionConfigs.ListFieldLevelEncryptionConfigsResponse instance GHC.Read.Read Network.AWS.CloudFront.ListFieldLevelEncryptionConfigs.ListFieldLevelEncryptionConfigsResponse instance GHC.Classes.Eq Network.AWS.CloudFront.ListFieldLevelEncryptionConfigs.ListFieldLevelEncryptionConfigsResponse instance GHC.Generics.Generic Network.AWS.CloudFront.ListFieldLevelEncryptionConfigs.ListFieldLevelEncryptionConfigs instance Data.Data.Data Network.AWS.CloudFront.ListFieldLevelEncryptionConfigs.ListFieldLevelEncryptionConfigs instance GHC.Show.Show Network.AWS.CloudFront.ListFieldLevelEncryptionConfigs.ListFieldLevelEncryptionConfigs instance GHC.Read.Read Network.AWS.CloudFront.ListFieldLevelEncryptionConfigs.ListFieldLevelEncryptionConfigs instance GHC.Classes.Eq Network.AWS.CloudFront.ListFieldLevelEncryptionConfigs.ListFieldLevelEncryptionConfigs instance Network.AWS.Types.AWSRequest Network.AWS.CloudFront.ListFieldLevelEncryptionConfigs.ListFieldLevelEncryptionConfigs instance Control.DeepSeq.NFData Network.AWS.CloudFront.ListFieldLevelEncryptionConfigs.ListFieldLevelEncryptionConfigsResponse instance Data.Hashable.Class.Hashable Network.AWS.CloudFront.ListFieldLevelEncryptionConfigs.ListFieldLevelEncryptionConfigs instance Control.DeepSeq.NFData Network.AWS.CloudFront.ListFieldLevelEncryptionConfigs.ListFieldLevelEncryptionConfigs instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudFront.ListFieldLevelEncryptionConfigs.ListFieldLevelEncryptionConfigs instance Network.AWS.Data.Path.ToPath Network.AWS.CloudFront.ListFieldLevelEncryptionConfigs.ListFieldLevelEncryptionConfigs instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudFront.ListFieldLevelEncryptionConfigs.ListFieldLevelEncryptionConfigs -- | List the distributions that are associated with a specified AWS WAF -- web ACL. module Network.AWS.CloudFront.ListDistributionsByWebACLId -- | Creates a value of ListDistributionsByWebACLId with the minimum -- fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- listDistributionsByWebACLId :: Text -> ListDistributionsByWebACLId -- | The request to list distributions that are associated with a specified -- AWS WAF web ACL. -- -- See: listDistributionsByWebACLId smart constructor. data ListDistributionsByWebACLId -- | 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 .) ldbwaiMarker :: Lens' ListDistributionsByWebACLId (Maybe Text) -- | The maximum number of distributions that you want CloudFront to return -- in the response body. The maximum and default values are both 100. ldbwaiMaxItems :: Lens' ListDistributionsByWebACLId (Maybe Text) -- | The ID of the AWS WAF web ACL that you want to list the associated -- distributions. If you specify "null" for the ID, the request returns a -- list of the distributions that aren't associated with a web ACL. ldbwaiWebACLId :: Lens' ListDistributionsByWebACLId Text -- | Creates a value of ListDistributionsByWebACLIdResponse with the -- minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- listDistributionsByWebACLIdResponse :: Int -> ListDistributionsByWebACLIdResponse -- | The response to a request to list the distributions that are -- associated with a specified AWS WAF web ACL. -- -- See: listDistributionsByWebACLIdResponse smart -- constructor. data ListDistributionsByWebACLIdResponse -- | The DistributionList type. ldbwairsDistributionList :: Lens' ListDistributionsByWebACLIdResponse (Maybe DistributionList) -- | ldbwairsResponseStatus :: Lens' ListDistributionsByWebACLIdResponse Int instance GHC.Generics.Generic Network.AWS.CloudFront.ListDistributionsByWebACLId.ListDistributionsByWebACLIdResponse instance Data.Data.Data Network.AWS.CloudFront.ListDistributionsByWebACLId.ListDistributionsByWebACLIdResponse instance GHC.Show.Show Network.AWS.CloudFront.ListDistributionsByWebACLId.ListDistributionsByWebACLIdResponse instance GHC.Read.Read Network.AWS.CloudFront.ListDistributionsByWebACLId.ListDistributionsByWebACLIdResponse instance GHC.Classes.Eq Network.AWS.CloudFront.ListDistributionsByWebACLId.ListDistributionsByWebACLIdResponse instance GHC.Generics.Generic Network.AWS.CloudFront.ListDistributionsByWebACLId.ListDistributionsByWebACLId instance Data.Data.Data Network.AWS.CloudFront.ListDistributionsByWebACLId.ListDistributionsByWebACLId instance GHC.Show.Show Network.AWS.CloudFront.ListDistributionsByWebACLId.ListDistributionsByWebACLId instance GHC.Read.Read Network.AWS.CloudFront.ListDistributionsByWebACLId.ListDistributionsByWebACLId instance GHC.Classes.Eq Network.AWS.CloudFront.ListDistributionsByWebACLId.ListDistributionsByWebACLId instance Network.AWS.Types.AWSRequest Network.AWS.CloudFront.ListDistributionsByWebACLId.ListDistributionsByWebACLId instance Control.DeepSeq.NFData Network.AWS.CloudFront.ListDistributionsByWebACLId.ListDistributionsByWebACLIdResponse instance Data.Hashable.Class.Hashable Network.AWS.CloudFront.ListDistributionsByWebACLId.ListDistributionsByWebACLId instance Control.DeepSeq.NFData Network.AWS.CloudFront.ListDistributionsByWebACLId.ListDistributionsByWebACLId instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudFront.ListDistributionsByWebACLId.ListDistributionsByWebACLId instance Network.AWS.Data.Path.ToPath Network.AWS.CloudFront.ListDistributionsByWebACLId.ListDistributionsByWebACLId instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudFront.ListDistributionsByWebACLId.ListDistributionsByWebACLId -- | List distributions. -- -- This operation returns paginated results. module Network.AWS.CloudFront.ListDistributions -- | Creates a value of ListDistributions with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- listDistributions :: ListDistributions -- | The request to list your distributions. -- -- See: listDistributions smart constructor. data ListDistributions -- | Use this when paginating results to indicate where to begin in your -- list of distributions. The results include distributions in the list -- that occur after the marker. To get the next page of results, set the -- Marker to the value of the NextMarker from the -- current page's response (which is also the ID of the last distribution -- on that page). ldMarker :: Lens' ListDistributions (Maybe Text) -- | The maximum number of distributions you want in the response body. ldMaxItems :: Lens' ListDistributions (Maybe Text) -- | Creates a value of ListDistributionsResponse with the minimum -- fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- listDistributionsResponse :: Int -> DistributionList -> ListDistributionsResponse -- | The returned result of the corresponding request. -- -- See: listDistributionsResponse smart constructor. data ListDistributionsResponse -- | ldrsResponseStatus :: Lens' ListDistributionsResponse Int -- | The DistributionList type. ldrsDistributionList :: Lens' ListDistributionsResponse DistributionList instance GHC.Generics.Generic Network.AWS.CloudFront.ListDistributions.ListDistributionsResponse instance Data.Data.Data Network.AWS.CloudFront.ListDistributions.ListDistributionsResponse instance GHC.Show.Show Network.AWS.CloudFront.ListDistributions.ListDistributionsResponse instance GHC.Read.Read Network.AWS.CloudFront.ListDistributions.ListDistributionsResponse instance GHC.Classes.Eq Network.AWS.CloudFront.ListDistributions.ListDistributionsResponse instance GHC.Generics.Generic Network.AWS.CloudFront.ListDistributions.ListDistributions instance Data.Data.Data Network.AWS.CloudFront.ListDistributions.ListDistributions instance GHC.Show.Show Network.AWS.CloudFront.ListDistributions.ListDistributions instance GHC.Read.Read Network.AWS.CloudFront.ListDistributions.ListDistributions instance GHC.Classes.Eq Network.AWS.CloudFront.ListDistributions.ListDistributions instance Network.AWS.Types.AWSRequest Network.AWS.CloudFront.ListDistributions.ListDistributions instance Control.DeepSeq.NFData Network.AWS.CloudFront.ListDistributions.ListDistributionsResponse instance Network.AWS.Pager.AWSPager Network.AWS.CloudFront.ListDistributions.ListDistributions instance Data.Hashable.Class.Hashable Network.AWS.CloudFront.ListDistributions.ListDistributions instance Control.DeepSeq.NFData Network.AWS.CloudFront.ListDistributions.ListDistributions instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudFront.ListDistributions.ListDistributions instance Network.AWS.Data.Path.ToPath Network.AWS.CloudFront.ListDistributions.ListDistributions instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudFront.ListDistributions.ListDistributions -- | Lists origin access identities. -- -- This operation returns paginated results. module Network.AWS.CloudFront.ListCloudFrontOriginAccessIdentities -- | Creates a value of ListCloudFrontOriginAccessIdentities with -- the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- listCloudFrontOriginAccessIdentities :: ListCloudFrontOriginAccessIdentities -- | The request to list origin access identities. -- -- See: listCloudFrontOriginAccessIdentities smart -- constructor. data ListCloudFrontOriginAccessIdentities -- | 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). lcfoaiMarker :: Lens' ListCloudFrontOriginAccessIdentities (Maybe Text) -- | The maximum number of origin access identities you want in the -- response body. lcfoaiMaxItems :: Lens' ListCloudFrontOriginAccessIdentities (Maybe Text) -- | Creates a value of ListCloudFrontOriginAccessIdentitiesResponse -- with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- listCloudFrontOriginAccessIdentitiesResponse :: Int -> CloudFrontOriginAccessIdentityList -> ListCloudFrontOriginAccessIdentitiesResponse -- | The returned result of the corresponding request. -- -- See: listCloudFrontOriginAccessIdentitiesResponse smart -- constructor. data ListCloudFrontOriginAccessIdentitiesResponse -- | lcfoairsResponseStatus :: Lens' ListCloudFrontOriginAccessIdentitiesResponse Int -- | The CloudFrontOriginAccessIdentityList type. lcfoairsCloudFrontOriginAccessIdentityList :: Lens' ListCloudFrontOriginAccessIdentitiesResponse CloudFrontOriginAccessIdentityList instance GHC.Generics.Generic Network.AWS.CloudFront.ListCloudFrontOriginAccessIdentities.ListCloudFrontOriginAccessIdentitiesResponse instance Data.Data.Data Network.AWS.CloudFront.ListCloudFrontOriginAccessIdentities.ListCloudFrontOriginAccessIdentitiesResponse instance GHC.Show.Show Network.AWS.CloudFront.ListCloudFrontOriginAccessIdentities.ListCloudFrontOriginAccessIdentitiesResponse instance GHC.Read.Read Network.AWS.CloudFront.ListCloudFrontOriginAccessIdentities.ListCloudFrontOriginAccessIdentitiesResponse instance GHC.Classes.Eq Network.AWS.CloudFront.ListCloudFrontOriginAccessIdentities.ListCloudFrontOriginAccessIdentitiesResponse instance GHC.Generics.Generic Network.AWS.CloudFront.ListCloudFrontOriginAccessIdentities.ListCloudFrontOriginAccessIdentities instance Data.Data.Data Network.AWS.CloudFront.ListCloudFrontOriginAccessIdentities.ListCloudFrontOriginAccessIdentities instance GHC.Show.Show Network.AWS.CloudFront.ListCloudFrontOriginAccessIdentities.ListCloudFrontOriginAccessIdentities instance GHC.Read.Read Network.AWS.CloudFront.ListCloudFrontOriginAccessIdentities.ListCloudFrontOriginAccessIdentities instance GHC.Classes.Eq Network.AWS.CloudFront.ListCloudFrontOriginAccessIdentities.ListCloudFrontOriginAccessIdentities instance Network.AWS.Types.AWSRequest Network.AWS.CloudFront.ListCloudFrontOriginAccessIdentities.ListCloudFrontOriginAccessIdentities instance Control.DeepSeq.NFData Network.AWS.CloudFront.ListCloudFrontOriginAccessIdentities.ListCloudFrontOriginAccessIdentitiesResponse instance Network.AWS.Pager.AWSPager Network.AWS.CloudFront.ListCloudFrontOriginAccessIdentities.ListCloudFrontOriginAccessIdentities instance Data.Hashable.Class.Hashable Network.AWS.CloudFront.ListCloudFrontOriginAccessIdentities.ListCloudFrontOriginAccessIdentities instance Control.DeepSeq.NFData Network.AWS.CloudFront.ListCloudFrontOriginAccessIdentities.ListCloudFrontOriginAccessIdentities instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudFront.ListCloudFrontOriginAccessIdentities.ListCloudFrontOriginAccessIdentities instance Network.AWS.Data.Path.ToPath Network.AWS.CloudFront.ListCloudFrontOriginAccessIdentities.ListCloudFrontOriginAccessIdentities instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudFront.ListCloudFrontOriginAccessIdentities.ListCloudFrontOriginAccessIdentities -- | Get the configuration information about a streaming distribution. module Network.AWS.CloudFront.GetStreamingDistributionConfig -- | Creates a value of GetStreamingDistributionConfig with the -- minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- getStreamingDistributionConfig :: Text -> GetStreamingDistributionConfig -- | To request to get a streaming distribution configuration. -- -- See: getStreamingDistributionConfig smart constructor. data GetStreamingDistributionConfig -- | The streaming distribution's ID. gsdcId :: Lens' GetStreamingDistributionConfig Text -- | Creates a value of GetStreamingDistributionConfigResponse with -- the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- getStreamingDistributionConfigResponse :: Int -> GetStreamingDistributionConfigResponse -- | The returned result of the corresponding request. -- -- See: getStreamingDistributionConfigResponse smart -- constructor. data GetStreamingDistributionConfigResponse -- | The streaming distribution's configuration information. gsdcrsStreamingDistributionConfig :: Lens' GetStreamingDistributionConfigResponse (Maybe StreamingDistributionConfig) -- | The current version of the configuration. For example: -- E2QWRUHAPOMQZL . gsdcrsETag :: Lens' GetStreamingDistributionConfigResponse (Maybe Text) -- | gsdcrsResponseStatus :: Lens' GetStreamingDistributionConfigResponse Int instance GHC.Generics.Generic Network.AWS.CloudFront.GetStreamingDistributionConfig.GetStreamingDistributionConfigResponse instance Data.Data.Data Network.AWS.CloudFront.GetStreamingDistributionConfig.GetStreamingDistributionConfigResponse instance GHC.Show.Show Network.AWS.CloudFront.GetStreamingDistributionConfig.GetStreamingDistributionConfigResponse instance GHC.Read.Read Network.AWS.CloudFront.GetStreamingDistributionConfig.GetStreamingDistributionConfigResponse instance GHC.Classes.Eq Network.AWS.CloudFront.GetStreamingDistributionConfig.GetStreamingDistributionConfigResponse instance GHC.Generics.Generic Network.AWS.CloudFront.GetStreamingDistributionConfig.GetStreamingDistributionConfig instance Data.Data.Data Network.AWS.CloudFront.GetStreamingDistributionConfig.GetStreamingDistributionConfig instance GHC.Show.Show Network.AWS.CloudFront.GetStreamingDistributionConfig.GetStreamingDistributionConfig instance GHC.Read.Read Network.AWS.CloudFront.GetStreamingDistributionConfig.GetStreamingDistributionConfig instance GHC.Classes.Eq Network.AWS.CloudFront.GetStreamingDistributionConfig.GetStreamingDistributionConfig instance Network.AWS.Types.AWSRequest Network.AWS.CloudFront.GetStreamingDistributionConfig.GetStreamingDistributionConfig instance Control.DeepSeq.NFData Network.AWS.CloudFront.GetStreamingDistributionConfig.GetStreamingDistributionConfigResponse instance Data.Hashable.Class.Hashable Network.AWS.CloudFront.GetStreamingDistributionConfig.GetStreamingDistributionConfig instance Control.DeepSeq.NFData Network.AWS.CloudFront.GetStreamingDistributionConfig.GetStreamingDistributionConfig instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudFront.GetStreamingDistributionConfig.GetStreamingDistributionConfig instance Network.AWS.Data.Path.ToPath Network.AWS.CloudFront.GetStreamingDistributionConfig.GetStreamingDistributionConfig instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudFront.GetStreamingDistributionConfig.GetStreamingDistributionConfig -- | Gets information about a specified RTMP distribution, including the -- distribution configuration. module Network.AWS.CloudFront.GetStreamingDistribution -- | Creates a value of GetStreamingDistribution with the minimum -- fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- getStreamingDistribution :: Text -> GetStreamingDistribution -- | The request to get a streaming distribution's information. -- -- See: getStreamingDistribution smart constructor. data GetStreamingDistribution -- | The streaming distribution's ID. gsdId :: Lens' GetStreamingDistribution Text -- | Creates a value of GetStreamingDistributionResponse with the -- minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- getStreamingDistributionResponse :: Int -> GetStreamingDistributionResponse -- | The returned result of the corresponding request. -- -- See: getStreamingDistributionResponse smart constructor. data GetStreamingDistributionResponse -- | The current version of the streaming distribution's information. For -- example: E2QWRUHAPOMQZL . gsdrsETag :: Lens' GetStreamingDistributionResponse (Maybe Text) -- | The streaming distribution's information. gsdrsStreamingDistribution :: Lens' GetStreamingDistributionResponse (Maybe StreamingDistribution) -- | gsdrsResponseStatus :: Lens' GetStreamingDistributionResponse Int instance GHC.Generics.Generic Network.AWS.CloudFront.GetStreamingDistribution.GetStreamingDistributionResponse instance Data.Data.Data Network.AWS.CloudFront.GetStreamingDistribution.GetStreamingDistributionResponse instance GHC.Show.Show Network.AWS.CloudFront.GetStreamingDistribution.GetStreamingDistributionResponse instance GHC.Read.Read Network.AWS.CloudFront.GetStreamingDistribution.GetStreamingDistributionResponse instance GHC.Classes.Eq Network.AWS.CloudFront.GetStreamingDistribution.GetStreamingDistributionResponse instance GHC.Generics.Generic Network.AWS.CloudFront.GetStreamingDistribution.GetStreamingDistribution instance Data.Data.Data Network.AWS.CloudFront.GetStreamingDistribution.GetStreamingDistribution instance GHC.Show.Show Network.AWS.CloudFront.GetStreamingDistribution.GetStreamingDistribution instance GHC.Read.Read Network.AWS.CloudFront.GetStreamingDistribution.GetStreamingDistribution instance GHC.Classes.Eq Network.AWS.CloudFront.GetStreamingDistribution.GetStreamingDistribution instance Network.AWS.Types.AWSRequest Network.AWS.CloudFront.GetStreamingDistribution.GetStreamingDistribution instance Control.DeepSeq.NFData Network.AWS.CloudFront.GetStreamingDistribution.GetStreamingDistributionResponse instance Data.Hashable.Class.Hashable Network.AWS.CloudFront.GetStreamingDistribution.GetStreamingDistribution instance Control.DeepSeq.NFData Network.AWS.CloudFront.GetStreamingDistribution.GetStreamingDistribution instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudFront.GetStreamingDistribution.GetStreamingDistribution instance Network.AWS.Data.Path.ToPath Network.AWS.CloudFront.GetStreamingDistribution.GetStreamingDistribution instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudFront.GetStreamingDistribution.GetStreamingDistribution -- | Return public key configuration informaation module Network.AWS.CloudFront.GetPublicKeyConfig -- | Creates a value of GetPublicKeyConfig with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- getPublicKeyConfig :: Text -> GetPublicKeyConfig -- | See: getPublicKeyConfig smart constructor. data GetPublicKeyConfig -- | Request the ID for the public key configuration. gpkcId :: Lens' GetPublicKeyConfig Text -- | Creates a value of GetPublicKeyConfigResponse with the minimum -- fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- getPublicKeyConfigResponse :: Int -> GetPublicKeyConfigResponse -- | See: getPublicKeyConfigResponse smart constructor. data GetPublicKeyConfigResponse -- | The current version of the public key configuration. For example: -- E2QWRUHAPOMQZL . gpkcrsETag :: Lens' GetPublicKeyConfigResponse (Maybe Text) -- | Return the result for the public key configuration. gpkcrsPublicKeyConfig :: Lens' GetPublicKeyConfigResponse (Maybe PublicKeyConfig) -- | gpkcrsResponseStatus :: Lens' GetPublicKeyConfigResponse Int instance GHC.Generics.Generic Network.AWS.CloudFront.GetPublicKeyConfig.GetPublicKeyConfigResponse instance Data.Data.Data Network.AWS.CloudFront.GetPublicKeyConfig.GetPublicKeyConfigResponse instance GHC.Show.Show Network.AWS.CloudFront.GetPublicKeyConfig.GetPublicKeyConfigResponse instance GHC.Read.Read Network.AWS.CloudFront.GetPublicKeyConfig.GetPublicKeyConfigResponse instance GHC.Classes.Eq Network.AWS.CloudFront.GetPublicKeyConfig.GetPublicKeyConfigResponse instance GHC.Generics.Generic Network.AWS.CloudFront.GetPublicKeyConfig.GetPublicKeyConfig instance Data.Data.Data Network.AWS.CloudFront.GetPublicKeyConfig.GetPublicKeyConfig instance GHC.Show.Show Network.AWS.CloudFront.GetPublicKeyConfig.GetPublicKeyConfig instance GHC.Read.Read Network.AWS.CloudFront.GetPublicKeyConfig.GetPublicKeyConfig instance GHC.Classes.Eq Network.AWS.CloudFront.GetPublicKeyConfig.GetPublicKeyConfig instance Network.AWS.Types.AWSRequest Network.AWS.CloudFront.GetPublicKeyConfig.GetPublicKeyConfig instance Control.DeepSeq.NFData Network.AWS.CloudFront.GetPublicKeyConfig.GetPublicKeyConfigResponse instance Data.Hashable.Class.Hashable Network.AWS.CloudFront.GetPublicKeyConfig.GetPublicKeyConfig instance Control.DeepSeq.NFData Network.AWS.CloudFront.GetPublicKeyConfig.GetPublicKeyConfig instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudFront.GetPublicKeyConfig.GetPublicKeyConfig instance Network.AWS.Data.Path.ToPath Network.AWS.CloudFront.GetPublicKeyConfig.GetPublicKeyConfig instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudFront.GetPublicKeyConfig.GetPublicKeyConfig -- | Get the public key information. module Network.AWS.CloudFront.GetPublicKey -- | Creates a value of GetPublicKey with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- getPublicKey :: Text -> GetPublicKey -- | See: getPublicKey smart constructor. data GetPublicKey -- | Request the ID for the public key. gpkId :: Lens' GetPublicKey Text -- | Creates a value of GetPublicKeyResponse with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- getPublicKeyResponse :: Int -> GetPublicKeyResponse -- | See: getPublicKeyResponse smart constructor. data GetPublicKeyResponse -- | The current version of the public key. For example: -- E2QWRUHAPOMQZL . gpkrsETag :: Lens' GetPublicKeyResponse (Maybe Text) -- | Return the public key. gpkrsPublicKey :: Lens' GetPublicKeyResponse (Maybe PublicKey) -- | gpkrsResponseStatus :: Lens' GetPublicKeyResponse Int instance GHC.Generics.Generic Network.AWS.CloudFront.GetPublicKey.GetPublicKeyResponse instance Data.Data.Data Network.AWS.CloudFront.GetPublicKey.GetPublicKeyResponse instance GHC.Show.Show Network.AWS.CloudFront.GetPublicKey.GetPublicKeyResponse instance GHC.Read.Read Network.AWS.CloudFront.GetPublicKey.GetPublicKeyResponse instance GHC.Classes.Eq Network.AWS.CloudFront.GetPublicKey.GetPublicKeyResponse instance GHC.Generics.Generic Network.AWS.CloudFront.GetPublicKey.GetPublicKey instance Data.Data.Data Network.AWS.CloudFront.GetPublicKey.GetPublicKey instance GHC.Show.Show Network.AWS.CloudFront.GetPublicKey.GetPublicKey instance GHC.Read.Read Network.AWS.CloudFront.GetPublicKey.GetPublicKey instance GHC.Classes.Eq Network.AWS.CloudFront.GetPublicKey.GetPublicKey instance Network.AWS.Types.AWSRequest Network.AWS.CloudFront.GetPublicKey.GetPublicKey instance Control.DeepSeq.NFData Network.AWS.CloudFront.GetPublicKey.GetPublicKeyResponse instance Data.Hashable.Class.Hashable Network.AWS.CloudFront.GetPublicKey.GetPublicKey instance Control.DeepSeq.NFData Network.AWS.CloudFront.GetPublicKey.GetPublicKey instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudFront.GetPublicKey.GetPublicKey instance Network.AWS.Data.Path.ToPath Network.AWS.CloudFront.GetPublicKey.GetPublicKey instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudFront.GetPublicKey.GetPublicKey -- | Get the information about an invalidation. module Network.AWS.CloudFront.GetInvalidation -- | Creates a value of GetInvalidation with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- getInvalidation :: Text -> Text -> GetInvalidation -- | The request to get an invalidation's information. -- -- See: getInvalidation smart constructor. data GetInvalidation -- | The distribution's ID. giDistributionId :: Lens' GetInvalidation Text -- | The identifier for the invalidation request, for example, -- IDFDVBD632BHDS5 . giId :: Lens' GetInvalidation Text -- | Creates a value of GetInvalidationResponse with the minimum -- fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- getInvalidationResponse :: Int -> GetInvalidationResponse -- | The returned result of the corresponding request. -- -- See: getInvalidationResponse smart constructor. data GetInvalidationResponse -- | The invalidation's information. For more information, see -- Invalidation Complex Type . girsInvalidation :: Lens' GetInvalidationResponse (Maybe Invalidation) -- | girsResponseStatus :: Lens' GetInvalidationResponse Int instance GHC.Generics.Generic Network.AWS.CloudFront.GetInvalidation.GetInvalidationResponse instance Data.Data.Data Network.AWS.CloudFront.GetInvalidation.GetInvalidationResponse instance GHC.Show.Show Network.AWS.CloudFront.GetInvalidation.GetInvalidationResponse instance GHC.Read.Read Network.AWS.CloudFront.GetInvalidation.GetInvalidationResponse instance GHC.Classes.Eq Network.AWS.CloudFront.GetInvalidation.GetInvalidationResponse instance GHC.Generics.Generic Network.AWS.CloudFront.GetInvalidation.GetInvalidation instance Data.Data.Data Network.AWS.CloudFront.GetInvalidation.GetInvalidation instance GHC.Show.Show Network.AWS.CloudFront.GetInvalidation.GetInvalidation instance GHC.Read.Read Network.AWS.CloudFront.GetInvalidation.GetInvalidation instance GHC.Classes.Eq Network.AWS.CloudFront.GetInvalidation.GetInvalidation instance Network.AWS.Types.AWSRequest Network.AWS.CloudFront.GetInvalidation.GetInvalidation instance Control.DeepSeq.NFData Network.AWS.CloudFront.GetInvalidation.GetInvalidationResponse instance Data.Hashable.Class.Hashable Network.AWS.CloudFront.GetInvalidation.GetInvalidation instance Control.DeepSeq.NFData Network.AWS.CloudFront.GetInvalidation.GetInvalidation instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudFront.GetInvalidation.GetInvalidation instance Network.AWS.Data.Path.ToPath Network.AWS.CloudFront.GetInvalidation.GetInvalidation instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudFront.GetInvalidation.GetInvalidation -- | Get the field-level encryption profile configuration information. module Network.AWS.CloudFront.GetFieldLevelEncryptionProfileConfig -- | Creates a value of GetFieldLevelEncryptionProfileConfig with -- the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- getFieldLevelEncryptionProfileConfig :: Text -> GetFieldLevelEncryptionProfileConfig -- | See: getFieldLevelEncryptionProfileConfig smart -- constructor. data GetFieldLevelEncryptionProfileConfig -- | Get the ID for the field-level encryption profile configuration -- information. gflepcId :: Lens' GetFieldLevelEncryptionProfileConfig Text -- | Creates a value of GetFieldLevelEncryptionProfileConfigResponse -- with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- getFieldLevelEncryptionProfileConfigResponse :: Int -> GetFieldLevelEncryptionProfileConfigResponse -- | See: getFieldLevelEncryptionProfileConfigResponse smart -- constructor. data GetFieldLevelEncryptionProfileConfigResponse -- | The current version of the field-level encryption profile -- configuration result. For example: E2QWRUHAPOMQZL . gflepcrsETag :: Lens' GetFieldLevelEncryptionProfileConfigResponse (Maybe Text) -- | Return the field-level encryption profile configuration information. gflepcrsFieldLevelEncryptionProfileConfig :: Lens' GetFieldLevelEncryptionProfileConfigResponse (Maybe FieldLevelEncryptionProfileConfig) -- | gflepcrsResponseStatus :: Lens' GetFieldLevelEncryptionProfileConfigResponse Int instance GHC.Generics.Generic Network.AWS.CloudFront.GetFieldLevelEncryptionProfileConfig.GetFieldLevelEncryptionProfileConfigResponse instance Data.Data.Data Network.AWS.CloudFront.GetFieldLevelEncryptionProfileConfig.GetFieldLevelEncryptionProfileConfigResponse instance GHC.Show.Show Network.AWS.CloudFront.GetFieldLevelEncryptionProfileConfig.GetFieldLevelEncryptionProfileConfigResponse instance GHC.Read.Read Network.AWS.CloudFront.GetFieldLevelEncryptionProfileConfig.GetFieldLevelEncryptionProfileConfigResponse instance GHC.Classes.Eq Network.AWS.CloudFront.GetFieldLevelEncryptionProfileConfig.GetFieldLevelEncryptionProfileConfigResponse instance GHC.Generics.Generic Network.AWS.CloudFront.GetFieldLevelEncryptionProfileConfig.GetFieldLevelEncryptionProfileConfig instance Data.Data.Data Network.AWS.CloudFront.GetFieldLevelEncryptionProfileConfig.GetFieldLevelEncryptionProfileConfig instance GHC.Show.Show Network.AWS.CloudFront.GetFieldLevelEncryptionProfileConfig.GetFieldLevelEncryptionProfileConfig instance GHC.Read.Read Network.AWS.CloudFront.GetFieldLevelEncryptionProfileConfig.GetFieldLevelEncryptionProfileConfig instance GHC.Classes.Eq Network.AWS.CloudFront.GetFieldLevelEncryptionProfileConfig.GetFieldLevelEncryptionProfileConfig instance Network.AWS.Types.AWSRequest Network.AWS.CloudFront.GetFieldLevelEncryptionProfileConfig.GetFieldLevelEncryptionProfileConfig instance Control.DeepSeq.NFData Network.AWS.CloudFront.GetFieldLevelEncryptionProfileConfig.GetFieldLevelEncryptionProfileConfigResponse instance Data.Hashable.Class.Hashable Network.AWS.CloudFront.GetFieldLevelEncryptionProfileConfig.GetFieldLevelEncryptionProfileConfig instance Control.DeepSeq.NFData Network.AWS.CloudFront.GetFieldLevelEncryptionProfileConfig.GetFieldLevelEncryptionProfileConfig instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudFront.GetFieldLevelEncryptionProfileConfig.GetFieldLevelEncryptionProfileConfig instance Network.AWS.Data.Path.ToPath Network.AWS.CloudFront.GetFieldLevelEncryptionProfileConfig.GetFieldLevelEncryptionProfileConfig instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudFront.GetFieldLevelEncryptionProfileConfig.GetFieldLevelEncryptionProfileConfig -- | Get the field-level encryption profile information. module Network.AWS.CloudFront.GetFieldLevelEncryptionProfile -- | Creates a value of GetFieldLevelEncryptionProfile with the -- minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- getFieldLevelEncryptionProfile :: Text -> GetFieldLevelEncryptionProfile -- | See: getFieldLevelEncryptionProfile smart constructor. data GetFieldLevelEncryptionProfile -- | Get the ID for the field-level encryption profile information. gflepId :: Lens' GetFieldLevelEncryptionProfile Text -- | Creates a value of GetFieldLevelEncryptionProfileResponse with -- the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- getFieldLevelEncryptionProfileResponse :: Int -> GetFieldLevelEncryptionProfileResponse -- | See: getFieldLevelEncryptionProfileResponse smart -- constructor. data GetFieldLevelEncryptionProfileResponse -- | The current version of the field level encryption profile. For -- example: E2QWRUHAPOMQZL . gfleprsETag :: Lens' GetFieldLevelEncryptionProfileResponse (Maybe Text) -- | Return the field-level encryption profile information. gfleprsFieldLevelEncryptionProfile :: Lens' GetFieldLevelEncryptionProfileResponse (Maybe FieldLevelEncryptionProfile) -- | gfleprsResponseStatus :: Lens' GetFieldLevelEncryptionProfileResponse Int instance GHC.Generics.Generic Network.AWS.CloudFront.GetFieldLevelEncryptionProfile.GetFieldLevelEncryptionProfileResponse instance Data.Data.Data Network.AWS.CloudFront.GetFieldLevelEncryptionProfile.GetFieldLevelEncryptionProfileResponse instance GHC.Show.Show Network.AWS.CloudFront.GetFieldLevelEncryptionProfile.GetFieldLevelEncryptionProfileResponse instance GHC.Read.Read Network.AWS.CloudFront.GetFieldLevelEncryptionProfile.GetFieldLevelEncryptionProfileResponse instance GHC.Classes.Eq Network.AWS.CloudFront.GetFieldLevelEncryptionProfile.GetFieldLevelEncryptionProfileResponse instance GHC.Generics.Generic Network.AWS.CloudFront.GetFieldLevelEncryptionProfile.GetFieldLevelEncryptionProfile instance Data.Data.Data Network.AWS.CloudFront.GetFieldLevelEncryptionProfile.GetFieldLevelEncryptionProfile instance GHC.Show.Show Network.AWS.CloudFront.GetFieldLevelEncryptionProfile.GetFieldLevelEncryptionProfile instance GHC.Read.Read Network.AWS.CloudFront.GetFieldLevelEncryptionProfile.GetFieldLevelEncryptionProfile instance GHC.Classes.Eq Network.AWS.CloudFront.GetFieldLevelEncryptionProfile.GetFieldLevelEncryptionProfile instance Network.AWS.Types.AWSRequest Network.AWS.CloudFront.GetFieldLevelEncryptionProfile.GetFieldLevelEncryptionProfile instance Control.DeepSeq.NFData Network.AWS.CloudFront.GetFieldLevelEncryptionProfile.GetFieldLevelEncryptionProfileResponse instance Data.Hashable.Class.Hashable Network.AWS.CloudFront.GetFieldLevelEncryptionProfile.GetFieldLevelEncryptionProfile instance Control.DeepSeq.NFData Network.AWS.CloudFront.GetFieldLevelEncryptionProfile.GetFieldLevelEncryptionProfile instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudFront.GetFieldLevelEncryptionProfile.GetFieldLevelEncryptionProfile instance Network.AWS.Data.Path.ToPath Network.AWS.CloudFront.GetFieldLevelEncryptionProfile.GetFieldLevelEncryptionProfile instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudFront.GetFieldLevelEncryptionProfile.GetFieldLevelEncryptionProfile -- | Get the field-level encryption configuration information. module Network.AWS.CloudFront.GetFieldLevelEncryptionConfig -- | Creates a value of GetFieldLevelEncryptionConfig with the -- minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- getFieldLevelEncryptionConfig :: Text -> GetFieldLevelEncryptionConfig -- | See: getFieldLevelEncryptionConfig smart constructor. data GetFieldLevelEncryptionConfig -- | Request the ID for the field-level encryption configuration -- information. gflecId :: Lens' GetFieldLevelEncryptionConfig Text -- | Creates a value of GetFieldLevelEncryptionConfigResponse with -- the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- getFieldLevelEncryptionConfigResponse :: Int -> GetFieldLevelEncryptionConfigResponse -- | See: getFieldLevelEncryptionConfigResponse smart -- constructor. data GetFieldLevelEncryptionConfigResponse -- | The current version of the field level encryption configuration. For -- example: E2QWRUHAPOMQZL . gflecrsETag :: Lens' GetFieldLevelEncryptionConfigResponse (Maybe Text) -- | Return the field-level encryption configuration information. gflecrsFieldLevelEncryptionConfig :: Lens' GetFieldLevelEncryptionConfigResponse (Maybe FieldLevelEncryptionConfig) -- | gflecrsResponseStatus :: Lens' GetFieldLevelEncryptionConfigResponse Int instance GHC.Generics.Generic Network.AWS.CloudFront.GetFieldLevelEncryptionConfig.GetFieldLevelEncryptionConfigResponse instance Data.Data.Data Network.AWS.CloudFront.GetFieldLevelEncryptionConfig.GetFieldLevelEncryptionConfigResponse instance GHC.Show.Show Network.AWS.CloudFront.GetFieldLevelEncryptionConfig.GetFieldLevelEncryptionConfigResponse instance GHC.Read.Read Network.AWS.CloudFront.GetFieldLevelEncryptionConfig.GetFieldLevelEncryptionConfigResponse instance GHC.Classes.Eq Network.AWS.CloudFront.GetFieldLevelEncryptionConfig.GetFieldLevelEncryptionConfigResponse instance GHC.Generics.Generic Network.AWS.CloudFront.GetFieldLevelEncryptionConfig.GetFieldLevelEncryptionConfig instance Data.Data.Data Network.AWS.CloudFront.GetFieldLevelEncryptionConfig.GetFieldLevelEncryptionConfig instance GHC.Show.Show Network.AWS.CloudFront.GetFieldLevelEncryptionConfig.GetFieldLevelEncryptionConfig instance GHC.Read.Read Network.AWS.CloudFront.GetFieldLevelEncryptionConfig.GetFieldLevelEncryptionConfig instance GHC.Classes.Eq Network.AWS.CloudFront.GetFieldLevelEncryptionConfig.GetFieldLevelEncryptionConfig instance Network.AWS.Types.AWSRequest Network.AWS.CloudFront.GetFieldLevelEncryptionConfig.GetFieldLevelEncryptionConfig instance Control.DeepSeq.NFData Network.AWS.CloudFront.GetFieldLevelEncryptionConfig.GetFieldLevelEncryptionConfigResponse instance Data.Hashable.Class.Hashable Network.AWS.CloudFront.GetFieldLevelEncryptionConfig.GetFieldLevelEncryptionConfig instance Control.DeepSeq.NFData Network.AWS.CloudFront.GetFieldLevelEncryptionConfig.GetFieldLevelEncryptionConfig instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudFront.GetFieldLevelEncryptionConfig.GetFieldLevelEncryptionConfig instance Network.AWS.Data.Path.ToPath Network.AWS.CloudFront.GetFieldLevelEncryptionConfig.GetFieldLevelEncryptionConfig instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudFront.GetFieldLevelEncryptionConfig.GetFieldLevelEncryptionConfig -- | Get the field-level encryption configuration information. module Network.AWS.CloudFront.GetFieldLevelEncryption -- | Creates a value of GetFieldLevelEncryption with the minimum -- fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- getFieldLevelEncryption :: Text -> GetFieldLevelEncryption -- | See: getFieldLevelEncryption smart constructor. data GetFieldLevelEncryption -- | Request the ID for the field-level encryption configuration -- information. gfleId :: Lens' GetFieldLevelEncryption Text -- | Creates a value of GetFieldLevelEncryptionResponse with the -- minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- getFieldLevelEncryptionResponse :: Int -> GetFieldLevelEncryptionResponse -- | See: getFieldLevelEncryptionResponse smart constructor. data GetFieldLevelEncryptionResponse -- | The current version of the field level encryption configuration. For -- example: E2QWRUHAPOMQZL . gflersETag :: Lens' GetFieldLevelEncryptionResponse (Maybe Text) -- | Return the field-level encryption configuration information. gflersFieldLevelEncryption :: Lens' GetFieldLevelEncryptionResponse (Maybe FieldLevelEncryption) -- | gflersResponseStatus :: Lens' GetFieldLevelEncryptionResponse Int instance GHC.Generics.Generic Network.AWS.CloudFront.GetFieldLevelEncryption.GetFieldLevelEncryptionResponse instance Data.Data.Data Network.AWS.CloudFront.GetFieldLevelEncryption.GetFieldLevelEncryptionResponse instance GHC.Show.Show Network.AWS.CloudFront.GetFieldLevelEncryption.GetFieldLevelEncryptionResponse instance GHC.Read.Read Network.AWS.CloudFront.GetFieldLevelEncryption.GetFieldLevelEncryptionResponse instance GHC.Classes.Eq Network.AWS.CloudFront.GetFieldLevelEncryption.GetFieldLevelEncryptionResponse instance GHC.Generics.Generic Network.AWS.CloudFront.GetFieldLevelEncryption.GetFieldLevelEncryption instance Data.Data.Data Network.AWS.CloudFront.GetFieldLevelEncryption.GetFieldLevelEncryption instance GHC.Show.Show Network.AWS.CloudFront.GetFieldLevelEncryption.GetFieldLevelEncryption instance GHC.Read.Read Network.AWS.CloudFront.GetFieldLevelEncryption.GetFieldLevelEncryption instance GHC.Classes.Eq Network.AWS.CloudFront.GetFieldLevelEncryption.GetFieldLevelEncryption instance Network.AWS.Types.AWSRequest Network.AWS.CloudFront.GetFieldLevelEncryption.GetFieldLevelEncryption instance Control.DeepSeq.NFData Network.AWS.CloudFront.GetFieldLevelEncryption.GetFieldLevelEncryptionResponse instance Data.Hashable.Class.Hashable Network.AWS.CloudFront.GetFieldLevelEncryption.GetFieldLevelEncryption instance Control.DeepSeq.NFData Network.AWS.CloudFront.GetFieldLevelEncryption.GetFieldLevelEncryption instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudFront.GetFieldLevelEncryption.GetFieldLevelEncryption instance Network.AWS.Data.Path.ToPath Network.AWS.CloudFront.GetFieldLevelEncryption.GetFieldLevelEncryption instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudFront.GetFieldLevelEncryption.GetFieldLevelEncryption -- | Get the configuration information about a distribution. module Network.AWS.CloudFront.GetDistributionConfig -- | Creates a value of GetDistributionConfig with the minimum -- fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- getDistributionConfig :: Text -> GetDistributionConfig -- | The request to get a distribution configuration. -- -- See: getDistributionConfig smart constructor. data GetDistributionConfig -- | The distribution's ID. gdcId :: Lens' GetDistributionConfig Text -- | Creates a value of GetDistributionConfigResponse with the -- minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- getDistributionConfigResponse :: Int -> GetDistributionConfigResponse -- | The returned result of the corresponding request. -- -- See: getDistributionConfigResponse smart constructor. data GetDistributionConfigResponse -- | The current version of the configuration. For example: -- E2QWRUHAPOMQZL . gdcrsETag :: Lens' GetDistributionConfigResponse (Maybe Text) -- | The distribution's configuration information. gdcrsDistributionConfig :: Lens' GetDistributionConfigResponse (Maybe DistributionConfig) -- | gdcrsResponseStatus :: Lens' GetDistributionConfigResponse Int instance GHC.Generics.Generic Network.AWS.CloudFront.GetDistributionConfig.GetDistributionConfigResponse instance Data.Data.Data Network.AWS.CloudFront.GetDistributionConfig.GetDistributionConfigResponse instance GHC.Show.Show Network.AWS.CloudFront.GetDistributionConfig.GetDistributionConfigResponse instance GHC.Read.Read Network.AWS.CloudFront.GetDistributionConfig.GetDistributionConfigResponse instance GHC.Classes.Eq Network.AWS.CloudFront.GetDistributionConfig.GetDistributionConfigResponse instance GHC.Generics.Generic Network.AWS.CloudFront.GetDistributionConfig.GetDistributionConfig instance Data.Data.Data Network.AWS.CloudFront.GetDistributionConfig.GetDistributionConfig instance GHC.Show.Show Network.AWS.CloudFront.GetDistributionConfig.GetDistributionConfig instance GHC.Read.Read Network.AWS.CloudFront.GetDistributionConfig.GetDistributionConfig instance GHC.Classes.Eq Network.AWS.CloudFront.GetDistributionConfig.GetDistributionConfig instance Network.AWS.Types.AWSRequest Network.AWS.CloudFront.GetDistributionConfig.GetDistributionConfig instance Control.DeepSeq.NFData Network.AWS.CloudFront.GetDistributionConfig.GetDistributionConfigResponse instance Data.Hashable.Class.Hashable Network.AWS.CloudFront.GetDistributionConfig.GetDistributionConfig instance Control.DeepSeq.NFData Network.AWS.CloudFront.GetDistributionConfig.GetDistributionConfig instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudFront.GetDistributionConfig.GetDistributionConfig instance Network.AWS.Data.Path.ToPath Network.AWS.CloudFront.GetDistributionConfig.GetDistributionConfig instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudFront.GetDistributionConfig.GetDistributionConfig -- | Get the information about a distribution. module Network.AWS.CloudFront.GetDistribution -- | Creates a value of GetDistribution with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- getDistribution :: Text -> GetDistribution -- | The request to get a distribution's information. -- -- See: getDistribution smart constructor. data GetDistribution -- | The distribution's ID. gdId :: Lens' GetDistribution Text -- | Creates a value of GetDistributionResponse with the minimum -- fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- getDistributionResponse :: Int -> GetDistributionResponse -- | The returned result of the corresponding request. -- -- See: getDistributionResponse smart constructor. data GetDistributionResponse -- | The current version of the distribution's information. For example: -- E2QWRUHAPOMQZL . gdrsETag :: Lens' GetDistributionResponse (Maybe Text) -- | The distribution's information. gdrsDistribution :: Lens' GetDistributionResponse (Maybe Distribution) -- | gdrsResponseStatus :: Lens' GetDistributionResponse Int instance GHC.Generics.Generic Network.AWS.CloudFront.GetDistribution.GetDistributionResponse instance Data.Data.Data Network.AWS.CloudFront.GetDistribution.GetDistributionResponse instance GHC.Show.Show Network.AWS.CloudFront.GetDistribution.GetDistributionResponse instance GHC.Read.Read Network.AWS.CloudFront.GetDistribution.GetDistributionResponse instance GHC.Classes.Eq Network.AWS.CloudFront.GetDistribution.GetDistributionResponse instance GHC.Generics.Generic Network.AWS.CloudFront.GetDistribution.GetDistribution instance Data.Data.Data Network.AWS.CloudFront.GetDistribution.GetDistribution instance GHC.Show.Show Network.AWS.CloudFront.GetDistribution.GetDistribution instance GHC.Read.Read Network.AWS.CloudFront.GetDistribution.GetDistribution instance GHC.Classes.Eq Network.AWS.CloudFront.GetDistribution.GetDistribution instance Network.AWS.Types.AWSRequest Network.AWS.CloudFront.GetDistribution.GetDistribution instance Control.DeepSeq.NFData Network.AWS.CloudFront.GetDistribution.GetDistributionResponse instance Data.Hashable.Class.Hashable Network.AWS.CloudFront.GetDistribution.GetDistribution instance Control.DeepSeq.NFData Network.AWS.CloudFront.GetDistribution.GetDistribution instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudFront.GetDistribution.GetDistribution instance Network.AWS.Data.Path.ToPath Network.AWS.CloudFront.GetDistribution.GetDistribution instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudFront.GetDistribution.GetDistribution -- | Get the configuration information about an origin access identity. module Network.AWS.CloudFront.GetCloudFrontOriginAccessIdentityConfig -- | Creates a value of GetCloudFrontOriginAccessIdentityConfig with -- the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- getCloudFrontOriginAccessIdentityConfig :: Text -> GetCloudFrontOriginAccessIdentityConfig -- | The origin access identity's configuration information. For more -- information, see -- CloudFrontOriginAccessIdentityConfigComplexType . -- -- See: getCloudFrontOriginAccessIdentityConfig smart -- constructor. data GetCloudFrontOriginAccessIdentityConfig -- | The identity's ID. gcfoaicId :: Lens' GetCloudFrontOriginAccessIdentityConfig Text -- | Creates a value of -- GetCloudFrontOriginAccessIdentityConfigResponse with the -- minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- getCloudFrontOriginAccessIdentityConfigResponse :: Int -> GetCloudFrontOriginAccessIdentityConfigResponse -- | The returned result of the corresponding request. -- -- See: getCloudFrontOriginAccessIdentityConfigResponse -- smart constructor. data GetCloudFrontOriginAccessIdentityConfigResponse -- | The origin access identity's configuration information. gcfoaicrsCloudFrontOriginAccessIdentityConfig :: Lens' GetCloudFrontOriginAccessIdentityConfigResponse (Maybe CloudFrontOriginAccessIdentityConfig) -- | The current version of the configuration. For example: -- E2QWRUHAPOMQZL . gcfoaicrsETag :: Lens' GetCloudFrontOriginAccessIdentityConfigResponse (Maybe Text) -- | gcfoaicrsResponseStatus :: Lens' GetCloudFrontOriginAccessIdentityConfigResponse Int instance GHC.Generics.Generic Network.AWS.CloudFront.GetCloudFrontOriginAccessIdentityConfig.GetCloudFrontOriginAccessIdentityConfigResponse instance Data.Data.Data Network.AWS.CloudFront.GetCloudFrontOriginAccessIdentityConfig.GetCloudFrontOriginAccessIdentityConfigResponse instance GHC.Show.Show Network.AWS.CloudFront.GetCloudFrontOriginAccessIdentityConfig.GetCloudFrontOriginAccessIdentityConfigResponse instance GHC.Read.Read Network.AWS.CloudFront.GetCloudFrontOriginAccessIdentityConfig.GetCloudFrontOriginAccessIdentityConfigResponse instance GHC.Classes.Eq Network.AWS.CloudFront.GetCloudFrontOriginAccessIdentityConfig.GetCloudFrontOriginAccessIdentityConfigResponse instance GHC.Generics.Generic Network.AWS.CloudFront.GetCloudFrontOriginAccessIdentityConfig.GetCloudFrontOriginAccessIdentityConfig instance Data.Data.Data Network.AWS.CloudFront.GetCloudFrontOriginAccessIdentityConfig.GetCloudFrontOriginAccessIdentityConfig instance GHC.Show.Show Network.AWS.CloudFront.GetCloudFrontOriginAccessIdentityConfig.GetCloudFrontOriginAccessIdentityConfig instance GHC.Read.Read Network.AWS.CloudFront.GetCloudFrontOriginAccessIdentityConfig.GetCloudFrontOriginAccessIdentityConfig instance GHC.Classes.Eq Network.AWS.CloudFront.GetCloudFrontOriginAccessIdentityConfig.GetCloudFrontOriginAccessIdentityConfig instance Network.AWS.Types.AWSRequest Network.AWS.CloudFront.GetCloudFrontOriginAccessIdentityConfig.GetCloudFrontOriginAccessIdentityConfig instance Control.DeepSeq.NFData Network.AWS.CloudFront.GetCloudFrontOriginAccessIdentityConfig.GetCloudFrontOriginAccessIdentityConfigResponse instance Data.Hashable.Class.Hashable Network.AWS.CloudFront.GetCloudFrontOriginAccessIdentityConfig.GetCloudFrontOriginAccessIdentityConfig instance Control.DeepSeq.NFData Network.AWS.CloudFront.GetCloudFrontOriginAccessIdentityConfig.GetCloudFrontOriginAccessIdentityConfig instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudFront.GetCloudFrontOriginAccessIdentityConfig.GetCloudFrontOriginAccessIdentityConfig instance Network.AWS.Data.Path.ToPath Network.AWS.CloudFront.GetCloudFrontOriginAccessIdentityConfig.GetCloudFrontOriginAccessIdentityConfig instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudFront.GetCloudFrontOriginAccessIdentityConfig.GetCloudFrontOriginAccessIdentityConfig -- | Get the information about an origin access identity. module Network.AWS.CloudFront.GetCloudFrontOriginAccessIdentity -- | Creates a value of GetCloudFrontOriginAccessIdentity with the -- minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- getCloudFrontOriginAccessIdentity :: Text -> GetCloudFrontOriginAccessIdentity -- | The request to get an origin access identity's information. -- -- See: getCloudFrontOriginAccessIdentity smart -- constructor. data GetCloudFrontOriginAccessIdentity -- | The identity's ID. gcfoaiId :: Lens' GetCloudFrontOriginAccessIdentity Text -- | Creates a value of GetCloudFrontOriginAccessIdentityResponse -- with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- getCloudFrontOriginAccessIdentityResponse :: Int -> GetCloudFrontOriginAccessIdentityResponse -- | The returned result of the corresponding request. -- -- See: getCloudFrontOriginAccessIdentityResponse smart -- constructor. data GetCloudFrontOriginAccessIdentityResponse -- | The current version of the origin access identity's information. For -- example: E2QWRUHAPOMQZL . gcfoairsETag :: Lens' GetCloudFrontOriginAccessIdentityResponse (Maybe Text) -- | The origin access identity's information. gcfoairsCloudFrontOriginAccessIdentity :: Lens' GetCloudFrontOriginAccessIdentityResponse (Maybe CloudFrontOriginAccessIdentity) -- | gcfoairsResponseStatus :: Lens' GetCloudFrontOriginAccessIdentityResponse Int instance GHC.Generics.Generic Network.AWS.CloudFront.GetCloudFrontOriginAccessIdentity.GetCloudFrontOriginAccessIdentityResponse instance Data.Data.Data Network.AWS.CloudFront.GetCloudFrontOriginAccessIdentity.GetCloudFrontOriginAccessIdentityResponse instance GHC.Show.Show Network.AWS.CloudFront.GetCloudFrontOriginAccessIdentity.GetCloudFrontOriginAccessIdentityResponse instance GHC.Read.Read Network.AWS.CloudFront.GetCloudFrontOriginAccessIdentity.GetCloudFrontOriginAccessIdentityResponse instance GHC.Classes.Eq Network.AWS.CloudFront.GetCloudFrontOriginAccessIdentity.GetCloudFrontOriginAccessIdentityResponse instance GHC.Generics.Generic Network.AWS.CloudFront.GetCloudFrontOriginAccessIdentity.GetCloudFrontOriginAccessIdentity instance Data.Data.Data Network.AWS.CloudFront.GetCloudFrontOriginAccessIdentity.GetCloudFrontOriginAccessIdentity instance GHC.Show.Show Network.AWS.CloudFront.GetCloudFrontOriginAccessIdentity.GetCloudFrontOriginAccessIdentity instance GHC.Read.Read Network.AWS.CloudFront.GetCloudFrontOriginAccessIdentity.GetCloudFrontOriginAccessIdentity instance GHC.Classes.Eq Network.AWS.CloudFront.GetCloudFrontOriginAccessIdentity.GetCloudFrontOriginAccessIdentity instance Network.AWS.Types.AWSRequest Network.AWS.CloudFront.GetCloudFrontOriginAccessIdentity.GetCloudFrontOriginAccessIdentity instance Control.DeepSeq.NFData Network.AWS.CloudFront.GetCloudFrontOriginAccessIdentity.GetCloudFrontOriginAccessIdentityResponse instance Data.Hashable.Class.Hashable Network.AWS.CloudFront.GetCloudFrontOriginAccessIdentity.GetCloudFrontOriginAccessIdentity instance Control.DeepSeq.NFData Network.AWS.CloudFront.GetCloudFrontOriginAccessIdentity.GetCloudFrontOriginAccessIdentity instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudFront.GetCloudFrontOriginAccessIdentity.GetCloudFrontOriginAccessIdentity instance Network.AWS.Data.Path.ToPath Network.AWS.CloudFront.GetCloudFrontOriginAccessIdentity.GetCloudFrontOriginAccessIdentity instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudFront.GetCloudFrontOriginAccessIdentity.GetCloudFrontOriginAccessIdentity -- | Delete a streaming distribution. To delete an RTMP distribution using -- the CloudFront API, perform the following steps. -- -- To delete an RTMP distribution using the CloudFront API : -- -- -- -- For information about deleting a distribution using the CloudFront -- console, see Deleting a Distribution in the Amazon -- CloudFront Developer Guide . module Network.AWS.CloudFront.DeleteStreamingDistribution -- | Creates a value of DeleteStreamingDistribution with the minimum -- fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- deleteStreamingDistribution :: Text -> DeleteStreamingDistribution -- | The request to delete a streaming distribution. -- -- See: deleteStreamingDistribution smart constructor. data DeleteStreamingDistribution -- | The value of the ETag header that you received when you -- disabled the streaming distribution. For example: -- E2QWRUHAPOMQZL . dsdIfMatch :: Lens' DeleteStreamingDistribution (Maybe Text) -- | The distribution ID. dsdId :: Lens' DeleteStreamingDistribution Text -- | Creates a value of DeleteStreamingDistributionResponse with the -- minimum fields required to make a request. deleteStreamingDistributionResponse :: DeleteStreamingDistributionResponse -- | See: deleteStreamingDistributionResponse smart -- constructor. data DeleteStreamingDistributionResponse instance GHC.Generics.Generic Network.AWS.CloudFront.DeleteStreamingDistribution.DeleteStreamingDistributionResponse instance Data.Data.Data Network.AWS.CloudFront.DeleteStreamingDistribution.DeleteStreamingDistributionResponse instance GHC.Show.Show Network.AWS.CloudFront.DeleteStreamingDistribution.DeleteStreamingDistributionResponse instance GHC.Read.Read Network.AWS.CloudFront.DeleteStreamingDistribution.DeleteStreamingDistributionResponse instance GHC.Classes.Eq Network.AWS.CloudFront.DeleteStreamingDistribution.DeleteStreamingDistributionResponse instance GHC.Generics.Generic Network.AWS.CloudFront.DeleteStreamingDistribution.DeleteStreamingDistribution instance Data.Data.Data Network.AWS.CloudFront.DeleteStreamingDistribution.DeleteStreamingDistribution instance GHC.Show.Show Network.AWS.CloudFront.DeleteStreamingDistribution.DeleteStreamingDistribution instance GHC.Read.Read Network.AWS.CloudFront.DeleteStreamingDistribution.DeleteStreamingDistribution instance GHC.Classes.Eq Network.AWS.CloudFront.DeleteStreamingDistribution.DeleteStreamingDistribution instance Network.AWS.Types.AWSRequest Network.AWS.CloudFront.DeleteStreamingDistribution.DeleteStreamingDistribution instance Control.DeepSeq.NFData Network.AWS.CloudFront.DeleteStreamingDistribution.DeleteStreamingDistributionResponse instance Data.Hashable.Class.Hashable Network.AWS.CloudFront.DeleteStreamingDistribution.DeleteStreamingDistribution instance Control.DeepSeq.NFData Network.AWS.CloudFront.DeleteStreamingDistribution.DeleteStreamingDistribution instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudFront.DeleteStreamingDistribution.DeleteStreamingDistribution instance Network.AWS.Data.Path.ToPath Network.AWS.CloudFront.DeleteStreamingDistribution.DeleteStreamingDistribution instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudFront.DeleteStreamingDistribution.DeleteStreamingDistribution -- | Undocumented operation. module Network.AWS.CloudFront.DeleteServiceLinkedRole -- | Creates a value of DeleteServiceLinkedRole with the minimum -- fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- deleteServiceLinkedRole :: Text -> DeleteServiceLinkedRole -- | See: deleteServiceLinkedRole smart constructor. data DeleteServiceLinkedRole -- | Undocumented member. dslrRoleName :: Lens' DeleteServiceLinkedRole Text -- | Creates a value of DeleteServiceLinkedRoleResponse with the -- minimum fields required to make a request. deleteServiceLinkedRoleResponse :: DeleteServiceLinkedRoleResponse -- | See: deleteServiceLinkedRoleResponse smart constructor. data DeleteServiceLinkedRoleResponse instance GHC.Generics.Generic Network.AWS.CloudFront.DeleteServiceLinkedRole.DeleteServiceLinkedRoleResponse instance Data.Data.Data Network.AWS.CloudFront.DeleteServiceLinkedRole.DeleteServiceLinkedRoleResponse instance GHC.Show.Show Network.AWS.CloudFront.DeleteServiceLinkedRole.DeleteServiceLinkedRoleResponse instance GHC.Read.Read Network.AWS.CloudFront.DeleteServiceLinkedRole.DeleteServiceLinkedRoleResponse instance GHC.Classes.Eq Network.AWS.CloudFront.DeleteServiceLinkedRole.DeleteServiceLinkedRoleResponse instance GHC.Generics.Generic Network.AWS.CloudFront.DeleteServiceLinkedRole.DeleteServiceLinkedRole instance Data.Data.Data Network.AWS.CloudFront.DeleteServiceLinkedRole.DeleteServiceLinkedRole instance GHC.Show.Show Network.AWS.CloudFront.DeleteServiceLinkedRole.DeleteServiceLinkedRole instance GHC.Read.Read Network.AWS.CloudFront.DeleteServiceLinkedRole.DeleteServiceLinkedRole instance GHC.Classes.Eq Network.AWS.CloudFront.DeleteServiceLinkedRole.DeleteServiceLinkedRole instance Network.AWS.Types.AWSRequest Network.AWS.CloudFront.DeleteServiceLinkedRole.DeleteServiceLinkedRole instance Control.DeepSeq.NFData Network.AWS.CloudFront.DeleteServiceLinkedRole.DeleteServiceLinkedRoleResponse instance Data.Hashable.Class.Hashable Network.AWS.CloudFront.DeleteServiceLinkedRole.DeleteServiceLinkedRole instance Control.DeepSeq.NFData Network.AWS.CloudFront.DeleteServiceLinkedRole.DeleteServiceLinkedRole instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudFront.DeleteServiceLinkedRole.DeleteServiceLinkedRole instance Network.AWS.Data.Path.ToPath Network.AWS.CloudFront.DeleteServiceLinkedRole.DeleteServiceLinkedRole instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudFront.DeleteServiceLinkedRole.DeleteServiceLinkedRole -- | Remove a public key you previously added to CloudFront. module Network.AWS.CloudFront.DeletePublicKey -- | Creates a value of DeletePublicKey with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- deletePublicKey :: Text -> DeletePublicKey -- | See: deletePublicKey smart constructor. data DeletePublicKey -- | The value of the ETag header that you received when -- retrieving the public key identity to delete. For example: -- E2QWRUHAPOMQZL . dpkIfMatch :: Lens' DeletePublicKey (Maybe Text) -- | The ID of the public key you want to remove from CloudFront. dpkId :: Lens' DeletePublicKey Text -- | Creates a value of DeletePublicKeyResponse with the minimum -- fields required to make a request. deletePublicKeyResponse :: DeletePublicKeyResponse -- | See: deletePublicKeyResponse smart constructor. data DeletePublicKeyResponse instance GHC.Generics.Generic Network.AWS.CloudFront.DeletePublicKey.DeletePublicKeyResponse instance Data.Data.Data Network.AWS.CloudFront.DeletePublicKey.DeletePublicKeyResponse instance GHC.Show.Show Network.AWS.CloudFront.DeletePublicKey.DeletePublicKeyResponse instance GHC.Read.Read Network.AWS.CloudFront.DeletePublicKey.DeletePublicKeyResponse instance GHC.Classes.Eq Network.AWS.CloudFront.DeletePublicKey.DeletePublicKeyResponse instance GHC.Generics.Generic Network.AWS.CloudFront.DeletePublicKey.DeletePublicKey instance Data.Data.Data Network.AWS.CloudFront.DeletePublicKey.DeletePublicKey instance GHC.Show.Show Network.AWS.CloudFront.DeletePublicKey.DeletePublicKey instance GHC.Read.Read Network.AWS.CloudFront.DeletePublicKey.DeletePublicKey instance GHC.Classes.Eq Network.AWS.CloudFront.DeletePublicKey.DeletePublicKey instance Network.AWS.Types.AWSRequest Network.AWS.CloudFront.DeletePublicKey.DeletePublicKey instance Control.DeepSeq.NFData Network.AWS.CloudFront.DeletePublicKey.DeletePublicKeyResponse instance Data.Hashable.Class.Hashable Network.AWS.CloudFront.DeletePublicKey.DeletePublicKey instance Control.DeepSeq.NFData Network.AWS.CloudFront.DeletePublicKey.DeletePublicKey instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudFront.DeletePublicKey.DeletePublicKey instance Network.AWS.Data.Path.ToPath Network.AWS.CloudFront.DeletePublicKey.DeletePublicKey instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudFront.DeletePublicKey.DeletePublicKey -- | Remove a field-level encryption profile. module Network.AWS.CloudFront.DeleteFieldLevelEncryptionProfile -- | Creates a value of DeleteFieldLevelEncryptionProfile with the -- minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- deleteFieldLevelEncryptionProfile :: Text -> DeleteFieldLevelEncryptionProfile -- | See: deleteFieldLevelEncryptionProfile smart -- constructor. data DeleteFieldLevelEncryptionProfile -- | The value of the ETag header that you received when -- retrieving the profile to delete. For example: E2QWRUHAPOMQZL -- . dflepIfMatch :: Lens' DeleteFieldLevelEncryptionProfile (Maybe Text) -- | Request the ID of the profile you want to delete from CloudFront. dflepId :: Lens' DeleteFieldLevelEncryptionProfile Text -- | Creates a value of DeleteFieldLevelEncryptionProfileResponse -- with the minimum fields required to make a request. deleteFieldLevelEncryptionProfileResponse :: DeleteFieldLevelEncryptionProfileResponse -- | See: deleteFieldLevelEncryptionProfileResponse smart -- constructor. data DeleteFieldLevelEncryptionProfileResponse instance GHC.Generics.Generic Network.AWS.CloudFront.DeleteFieldLevelEncryptionProfile.DeleteFieldLevelEncryptionProfileResponse instance Data.Data.Data Network.AWS.CloudFront.DeleteFieldLevelEncryptionProfile.DeleteFieldLevelEncryptionProfileResponse instance GHC.Show.Show Network.AWS.CloudFront.DeleteFieldLevelEncryptionProfile.DeleteFieldLevelEncryptionProfileResponse instance GHC.Read.Read Network.AWS.CloudFront.DeleteFieldLevelEncryptionProfile.DeleteFieldLevelEncryptionProfileResponse instance GHC.Classes.Eq Network.AWS.CloudFront.DeleteFieldLevelEncryptionProfile.DeleteFieldLevelEncryptionProfileResponse instance GHC.Generics.Generic Network.AWS.CloudFront.DeleteFieldLevelEncryptionProfile.DeleteFieldLevelEncryptionProfile instance Data.Data.Data Network.AWS.CloudFront.DeleteFieldLevelEncryptionProfile.DeleteFieldLevelEncryptionProfile instance GHC.Show.Show Network.AWS.CloudFront.DeleteFieldLevelEncryptionProfile.DeleteFieldLevelEncryptionProfile instance GHC.Read.Read Network.AWS.CloudFront.DeleteFieldLevelEncryptionProfile.DeleteFieldLevelEncryptionProfile instance GHC.Classes.Eq Network.AWS.CloudFront.DeleteFieldLevelEncryptionProfile.DeleteFieldLevelEncryptionProfile instance Network.AWS.Types.AWSRequest Network.AWS.CloudFront.DeleteFieldLevelEncryptionProfile.DeleteFieldLevelEncryptionProfile instance Control.DeepSeq.NFData Network.AWS.CloudFront.DeleteFieldLevelEncryptionProfile.DeleteFieldLevelEncryptionProfileResponse instance Data.Hashable.Class.Hashable Network.AWS.CloudFront.DeleteFieldLevelEncryptionProfile.DeleteFieldLevelEncryptionProfile instance Control.DeepSeq.NFData Network.AWS.CloudFront.DeleteFieldLevelEncryptionProfile.DeleteFieldLevelEncryptionProfile instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudFront.DeleteFieldLevelEncryptionProfile.DeleteFieldLevelEncryptionProfile instance Network.AWS.Data.Path.ToPath Network.AWS.CloudFront.DeleteFieldLevelEncryptionProfile.DeleteFieldLevelEncryptionProfile instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudFront.DeleteFieldLevelEncryptionProfile.DeleteFieldLevelEncryptionProfile -- | Remove a field-level encryption configuration. module Network.AWS.CloudFront.DeleteFieldLevelEncryptionConfig -- | Creates a value of DeleteFieldLevelEncryptionConfig with the -- minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- deleteFieldLevelEncryptionConfig :: Text -> DeleteFieldLevelEncryptionConfig -- | See: deleteFieldLevelEncryptionConfig smart constructor. data DeleteFieldLevelEncryptionConfig -- | The value of the ETag header that you received when -- retrieving the configuration identity to delete. For example: -- E2QWRUHAPOMQZL . dflecIfMatch :: Lens' DeleteFieldLevelEncryptionConfig (Maybe Text) -- | The ID of the configuration you want to delete from CloudFront. dflecId :: Lens' DeleteFieldLevelEncryptionConfig Text -- | Creates a value of DeleteFieldLevelEncryptionConfigResponse -- with the minimum fields required to make a request. deleteFieldLevelEncryptionConfigResponse :: DeleteFieldLevelEncryptionConfigResponse -- | See: deleteFieldLevelEncryptionConfigResponse smart -- constructor. data DeleteFieldLevelEncryptionConfigResponse instance GHC.Generics.Generic Network.AWS.CloudFront.DeleteFieldLevelEncryptionConfig.DeleteFieldLevelEncryptionConfigResponse instance Data.Data.Data Network.AWS.CloudFront.DeleteFieldLevelEncryptionConfig.DeleteFieldLevelEncryptionConfigResponse instance GHC.Show.Show Network.AWS.CloudFront.DeleteFieldLevelEncryptionConfig.DeleteFieldLevelEncryptionConfigResponse instance GHC.Read.Read Network.AWS.CloudFront.DeleteFieldLevelEncryptionConfig.DeleteFieldLevelEncryptionConfigResponse instance GHC.Classes.Eq Network.AWS.CloudFront.DeleteFieldLevelEncryptionConfig.DeleteFieldLevelEncryptionConfigResponse instance GHC.Generics.Generic Network.AWS.CloudFront.DeleteFieldLevelEncryptionConfig.DeleteFieldLevelEncryptionConfig instance Data.Data.Data Network.AWS.CloudFront.DeleteFieldLevelEncryptionConfig.DeleteFieldLevelEncryptionConfig instance GHC.Show.Show Network.AWS.CloudFront.DeleteFieldLevelEncryptionConfig.DeleteFieldLevelEncryptionConfig instance GHC.Read.Read Network.AWS.CloudFront.DeleteFieldLevelEncryptionConfig.DeleteFieldLevelEncryptionConfig instance GHC.Classes.Eq Network.AWS.CloudFront.DeleteFieldLevelEncryptionConfig.DeleteFieldLevelEncryptionConfig instance Network.AWS.Types.AWSRequest Network.AWS.CloudFront.DeleteFieldLevelEncryptionConfig.DeleteFieldLevelEncryptionConfig instance Control.DeepSeq.NFData Network.AWS.CloudFront.DeleteFieldLevelEncryptionConfig.DeleteFieldLevelEncryptionConfigResponse instance Data.Hashable.Class.Hashable Network.AWS.CloudFront.DeleteFieldLevelEncryptionConfig.DeleteFieldLevelEncryptionConfig instance Control.DeepSeq.NFData Network.AWS.CloudFront.DeleteFieldLevelEncryptionConfig.DeleteFieldLevelEncryptionConfig instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudFront.DeleteFieldLevelEncryptionConfig.DeleteFieldLevelEncryptionConfig instance Network.AWS.Data.Path.ToPath Network.AWS.CloudFront.DeleteFieldLevelEncryptionConfig.DeleteFieldLevelEncryptionConfig instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudFront.DeleteFieldLevelEncryptionConfig.DeleteFieldLevelEncryptionConfig -- | Delete a distribution. module Network.AWS.CloudFront.DeleteDistribution -- | Creates a value of DeleteDistribution with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- deleteDistribution :: Text -> DeleteDistribution -- | This action deletes a web distribution. To delete a web distribution -- using the CloudFront API, perform the following steps. -- -- To delete a web distribution using the CloudFront API: -- -- -- -- For information about deleting a distribution using the CloudFront -- console, see Deleting a Distribution in the Amazon -- CloudFront Developer Guide . -- -- See: deleteDistribution smart constructor. data DeleteDistribution -- | The value of the ETag header that you received when you -- disabled the distribution. For example: E2QWRUHAPOMQZL . ddIfMatch :: Lens' DeleteDistribution (Maybe Text) -- | The distribution ID. ddId :: Lens' DeleteDistribution Text -- | Creates a value of DeleteDistributionResponse with the minimum -- fields required to make a request. deleteDistributionResponse :: DeleteDistributionResponse -- | See: deleteDistributionResponse smart constructor. data DeleteDistributionResponse instance GHC.Generics.Generic Network.AWS.CloudFront.DeleteDistribution.DeleteDistributionResponse instance Data.Data.Data Network.AWS.CloudFront.DeleteDistribution.DeleteDistributionResponse instance GHC.Show.Show Network.AWS.CloudFront.DeleteDistribution.DeleteDistributionResponse instance GHC.Read.Read Network.AWS.CloudFront.DeleteDistribution.DeleteDistributionResponse instance GHC.Classes.Eq Network.AWS.CloudFront.DeleteDistribution.DeleteDistributionResponse instance GHC.Generics.Generic Network.AWS.CloudFront.DeleteDistribution.DeleteDistribution instance Data.Data.Data Network.AWS.CloudFront.DeleteDistribution.DeleteDistribution instance GHC.Show.Show Network.AWS.CloudFront.DeleteDistribution.DeleteDistribution instance GHC.Read.Read Network.AWS.CloudFront.DeleteDistribution.DeleteDistribution instance GHC.Classes.Eq Network.AWS.CloudFront.DeleteDistribution.DeleteDistribution instance Network.AWS.Types.AWSRequest Network.AWS.CloudFront.DeleteDistribution.DeleteDistribution instance Control.DeepSeq.NFData Network.AWS.CloudFront.DeleteDistribution.DeleteDistributionResponse instance Data.Hashable.Class.Hashable Network.AWS.CloudFront.DeleteDistribution.DeleteDistribution instance Control.DeepSeq.NFData Network.AWS.CloudFront.DeleteDistribution.DeleteDistribution instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudFront.DeleteDistribution.DeleteDistribution instance Network.AWS.Data.Path.ToPath Network.AWS.CloudFront.DeleteDistribution.DeleteDistribution instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudFront.DeleteDistribution.DeleteDistribution -- | Delete an origin access identity. module Network.AWS.CloudFront.DeleteCloudFrontOriginAccessIdentity -- | Creates a value of DeleteCloudFrontOriginAccessIdentity with -- the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- deleteCloudFrontOriginAccessIdentity :: Text -> DeleteCloudFrontOriginAccessIdentity -- | Deletes a origin access identity. -- -- See: deleteCloudFrontOriginAccessIdentity smart -- constructor. data DeleteCloudFrontOriginAccessIdentity -- | The value of the ETag header you received from a previous -- GET or PUT request. For example: -- E2QWRUHAPOMQZL . dcfoaiIfMatch :: Lens' DeleteCloudFrontOriginAccessIdentity (Maybe Text) -- | The origin access identity's ID. dcfoaiId :: Lens' DeleteCloudFrontOriginAccessIdentity Text -- | Creates a value of DeleteCloudFrontOriginAccessIdentityResponse -- with the minimum fields required to make a request. deleteCloudFrontOriginAccessIdentityResponse :: DeleteCloudFrontOriginAccessIdentityResponse -- | See: deleteCloudFrontOriginAccessIdentityResponse smart -- constructor. data DeleteCloudFrontOriginAccessIdentityResponse instance GHC.Generics.Generic Network.AWS.CloudFront.DeleteCloudFrontOriginAccessIdentity.DeleteCloudFrontOriginAccessIdentityResponse instance Data.Data.Data Network.AWS.CloudFront.DeleteCloudFrontOriginAccessIdentity.DeleteCloudFrontOriginAccessIdentityResponse instance GHC.Show.Show Network.AWS.CloudFront.DeleteCloudFrontOriginAccessIdentity.DeleteCloudFrontOriginAccessIdentityResponse instance GHC.Read.Read Network.AWS.CloudFront.DeleteCloudFrontOriginAccessIdentity.DeleteCloudFrontOriginAccessIdentityResponse instance GHC.Classes.Eq Network.AWS.CloudFront.DeleteCloudFrontOriginAccessIdentity.DeleteCloudFrontOriginAccessIdentityResponse instance GHC.Generics.Generic Network.AWS.CloudFront.DeleteCloudFrontOriginAccessIdentity.DeleteCloudFrontOriginAccessIdentity instance Data.Data.Data Network.AWS.CloudFront.DeleteCloudFrontOriginAccessIdentity.DeleteCloudFrontOriginAccessIdentity instance GHC.Show.Show Network.AWS.CloudFront.DeleteCloudFrontOriginAccessIdentity.DeleteCloudFrontOriginAccessIdentity instance GHC.Read.Read Network.AWS.CloudFront.DeleteCloudFrontOriginAccessIdentity.DeleteCloudFrontOriginAccessIdentity instance GHC.Classes.Eq Network.AWS.CloudFront.DeleteCloudFrontOriginAccessIdentity.DeleteCloudFrontOriginAccessIdentity instance Network.AWS.Types.AWSRequest Network.AWS.CloudFront.DeleteCloudFrontOriginAccessIdentity.DeleteCloudFrontOriginAccessIdentity instance Control.DeepSeq.NFData Network.AWS.CloudFront.DeleteCloudFrontOriginAccessIdentity.DeleteCloudFrontOriginAccessIdentityResponse instance Data.Hashable.Class.Hashable Network.AWS.CloudFront.DeleteCloudFrontOriginAccessIdentity.DeleteCloudFrontOriginAccessIdentity instance Control.DeepSeq.NFData Network.AWS.CloudFront.DeleteCloudFrontOriginAccessIdentity.DeleteCloudFrontOriginAccessIdentity instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudFront.DeleteCloudFrontOriginAccessIdentity.DeleteCloudFrontOriginAccessIdentity instance Network.AWS.Data.Path.ToPath Network.AWS.CloudFront.DeleteCloudFrontOriginAccessIdentity.DeleteCloudFrontOriginAccessIdentity instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudFront.DeleteCloudFrontOriginAccessIdentity.DeleteCloudFrontOriginAccessIdentity -- | Create a new streaming distribution with tags. module Network.AWS.CloudFront.CreateStreamingDistributionWithTags -- | Creates a value of CreateStreamingDistributionWithTags with the -- minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- createStreamingDistributionWithTags :: StreamingDistributionConfigWithTags -> CreateStreamingDistributionWithTags -- | The request to create a new streaming distribution with tags. -- -- See: createStreamingDistributionWithTags smart -- constructor. data CreateStreamingDistributionWithTags -- | The streaming distribution's configuration information. csdwtStreamingDistributionConfigWithTags :: Lens' CreateStreamingDistributionWithTags StreamingDistributionConfigWithTags -- | Creates a value of CreateStreamingDistributionWithTagsResponse -- with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- createStreamingDistributionWithTagsResponse :: Int -> CreateStreamingDistributionWithTagsResponse -- | The returned result of the corresponding request. -- -- See: createStreamingDistributionWithTagsResponse smart -- constructor. data CreateStreamingDistributionWithTagsResponse -- | Undocumented member. csdwtrsETag :: Lens' CreateStreamingDistributionWithTagsResponse (Maybe Text) -- | The fully qualified URI of the new streaming distribution resource -- just created. For -- example:https://cloudfront.amazonaws.com/2010-11-01/streaming-distribution/EGTXBD79H29TRA8 -- . csdwtrsLocation :: Lens' CreateStreamingDistributionWithTagsResponse (Maybe Text) -- | The streaming distribution's information. csdwtrsStreamingDistribution :: Lens' CreateStreamingDistributionWithTagsResponse (Maybe StreamingDistribution) -- | csdwtrsResponseStatus :: Lens' CreateStreamingDistributionWithTagsResponse Int instance GHC.Generics.Generic Network.AWS.CloudFront.CreateStreamingDistributionWithTags.CreateStreamingDistributionWithTagsResponse instance Data.Data.Data Network.AWS.CloudFront.CreateStreamingDistributionWithTags.CreateStreamingDistributionWithTagsResponse instance GHC.Show.Show Network.AWS.CloudFront.CreateStreamingDistributionWithTags.CreateStreamingDistributionWithTagsResponse instance GHC.Read.Read Network.AWS.CloudFront.CreateStreamingDistributionWithTags.CreateStreamingDistributionWithTagsResponse instance GHC.Classes.Eq Network.AWS.CloudFront.CreateStreamingDistributionWithTags.CreateStreamingDistributionWithTagsResponse instance GHC.Generics.Generic Network.AWS.CloudFront.CreateStreamingDistributionWithTags.CreateStreamingDistributionWithTags instance Data.Data.Data Network.AWS.CloudFront.CreateStreamingDistributionWithTags.CreateStreamingDistributionWithTags instance GHC.Show.Show Network.AWS.CloudFront.CreateStreamingDistributionWithTags.CreateStreamingDistributionWithTags instance GHC.Read.Read Network.AWS.CloudFront.CreateStreamingDistributionWithTags.CreateStreamingDistributionWithTags instance GHC.Classes.Eq Network.AWS.CloudFront.CreateStreamingDistributionWithTags.CreateStreamingDistributionWithTags instance Network.AWS.Types.AWSRequest Network.AWS.CloudFront.CreateStreamingDistributionWithTags.CreateStreamingDistributionWithTags instance Control.DeepSeq.NFData Network.AWS.CloudFront.CreateStreamingDistributionWithTags.CreateStreamingDistributionWithTagsResponse instance Data.Hashable.Class.Hashable Network.AWS.CloudFront.CreateStreamingDistributionWithTags.CreateStreamingDistributionWithTags instance Control.DeepSeq.NFData Network.AWS.CloudFront.CreateStreamingDistributionWithTags.CreateStreamingDistributionWithTags instance Network.AWS.Data.XML.ToElement Network.AWS.CloudFront.CreateStreamingDistributionWithTags.CreateStreamingDistributionWithTags instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudFront.CreateStreamingDistributionWithTags.CreateStreamingDistributionWithTags instance Network.AWS.Data.Path.ToPath Network.AWS.CloudFront.CreateStreamingDistributionWithTags.CreateStreamingDistributionWithTags instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudFront.CreateStreamingDistributionWithTags.CreateStreamingDistributionWithTags -- | Creates a new RMTP distribution. An RTMP distribution is similar to a -- web distribution, but an RTMP distribution streams media files using -- the Adobe Real-Time Messaging Protocol (RTMP) instead of serving files -- using HTTP. -- -- To create a new web distribution, submit a POST request to -- the CloudFront API version distribution resource. The -- request body must include a document with a -- StreamingDistributionConfig/ element. The response echoes the -- StreamingDistributionConfig element and returns other -- information about the RTMP distribution. -- -- To get the status of your request, use the GET -- StreamingDistribution API action. When the value of -- Enabled is true and the value of Status is -- Deployed , your distribution is ready. A distribution usually -- deploys in less than 15 minutes. -- -- For more information about web distributions, see Working with RTMP -- Distributions in the Amazon CloudFront Developer Guide . -- -- Important: Beginning with the 2012-05-05 version of the -- CloudFront API, we made substantial changes to the format of the XML -- document that you include in the request body when you create or -- update a web distribution or an RTMP distribution, and when you -- invalidate objects. With previous versions of the API, we discovered -- that it was too easy to accidentally delete one or more values for an -- element that accepts multiple values, for example, CNAMEs and trusted -- signers. Our changes for the 2012-05-05 release are intended to -- prevent these accidental deletions and to notify you when there's a -- mismatch between the number of values you say you're specifying in the -- Quantity element and the number of values specified. module Network.AWS.CloudFront.CreateStreamingDistribution -- | Creates a value of CreateStreamingDistribution with the minimum -- fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- createStreamingDistribution :: StreamingDistributionConfig -> CreateStreamingDistribution -- | The request to create a new streaming distribution. -- -- See: createStreamingDistribution smart constructor. data CreateStreamingDistribution -- | The streaming distribution's configuration information. csdStreamingDistributionConfig :: Lens' CreateStreamingDistribution StreamingDistributionConfig -- | Creates a value of CreateStreamingDistributionResponse with the -- minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- createStreamingDistributionResponse :: Int -> CreateStreamingDistributionResponse -- | The returned result of the corresponding request. -- -- See: createStreamingDistributionResponse smart -- constructor. data CreateStreamingDistributionResponse -- | The current version of the streaming distribution created. csdrsETag :: Lens' CreateStreamingDistributionResponse (Maybe Text) -- | The fully qualified URI of the new streaming distribution resource -- just created. For example: -- https://cloudfront.amazonaws.com/2010-11-01/streaming-distribution/EGTXBD79H29TRA8 -- . csdrsLocation :: Lens' CreateStreamingDistributionResponse (Maybe Text) -- | The streaming distribution's information. csdrsStreamingDistribution :: Lens' CreateStreamingDistributionResponse (Maybe StreamingDistribution) -- | csdrsResponseStatus :: Lens' CreateStreamingDistributionResponse Int instance GHC.Generics.Generic Network.AWS.CloudFront.CreateStreamingDistribution.CreateStreamingDistributionResponse instance Data.Data.Data Network.AWS.CloudFront.CreateStreamingDistribution.CreateStreamingDistributionResponse instance GHC.Show.Show Network.AWS.CloudFront.CreateStreamingDistribution.CreateStreamingDistributionResponse instance GHC.Read.Read Network.AWS.CloudFront.CreateStreamingDistribution.CreateStreamingDistributionResponse instance GHC.Classes.Eq Network.AWS.CloudFront.CreateStreamingDistribution.CreateStreamingDistributionResponse instance GHC.Generics.Generic Network.AWS.CloudFront.CreateStreamingDistribution.CreateStreamingDistribution instance Data.Data.Data Network.AWS.CloudFront.CreateStreamingDistribution.CreateStreamingDistribution instance GHC.Show.Show Network.AWS.CloudFront.CreateStreamingDistribution.CreateStreamingDistribution instance GHC.Read.Read Network.AWS.CloudFront.CreateStreamingDistribution.CreateStreamingDistribution instance GHC.Classes.Eq Network.AWS.CloudFront.CreateStreamingDistribution.CreateStreamingDistribution instance Network.AWS.Types.AWSRequest Network.AWS.CloudFront.CreateStreamingDistribution.CreateStreamingDistribution instance Control.DeepSeq.NFData Network.AWS.CloudFront.CreateStreamingDistribution.CreateStreamingDistributionResponse instance Data.Hashable.Class.Hashable Network.AWS.CloudFront.CreateStreamingDistribution.CreateStreamingDistribution instance Control.DeepSeq.NFData Network.AWS.CloudFront.CreateStreamingDistribution.CreateStreamingDistribution instance Network.AWS.Data.XML.ToElement Network.AWS.CloudFront.CreateStreamingDistribution.CreateStreamingDistribution instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudFront.CreateStreamingDistribution.CreateStreamingDistribution instance Network.AWS.Data.Path.ToPath Network.AWS.CloudFront.CreateStreamingDistribution.CreateStreamingDistribution instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudFront.CreateStreamingDistribution.CreateStreamingDistribution -- | Add a new public key to CloudFront to use, for example, for -- field-level encryption. You can add a maximum of 10 public keys with -- one AWS account. module Network.AWS.CloudFront.CreatePublicKey -- | Creates a value of CreatePublicKey with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- createPublicKey :: PublicKeyConfig -> CreatePublicKey -- | See: createPublicKey smart constructor. data CreatePublicKey -- | The request to add a public key to CloudFront. cpkPublicKeyConfig :: Lens' CreatePublicKey PublicKeyConfig -- | Creates a value of CreatePublicKeyResponse with the minimum -- fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- createPublicKeyResponse :: Int -> CreatePublicKeyResponse -- | See: createPublicKeyResponse smart constructor. data CreatePublicKeyResponse -- | The current version of the public key. For example: -- E2QWRUHAPOMQZL . cpkrsETag :: Lens' CreatePublicKeyResponse (Maybe Text) -- | The fully qualified URI of the new public key resource just created. -- For example: -- https://cloudfront.amazonaws.com/2010-11-01/cloudfront-public-key/EDFDVBD632BHDS5 -- . cpkrsLocation :: Lens' CreatePublicKeyResponse (Maybe Text) -- | Returned when you add a public key. cpkrsPublicKey :: Lens' CreatePublicKeyResponse (Maybe PublicKey) -- | cpkrsResponseStatus :: Lens' CreatePublicKeyResponse Int instance GHC.Generics.Generic Network.AWS.CloudFront.CreatePublicKey.CreatePublicKeyResponse instance Data.Data.Data Network.AWS.CloudFront.CreatePublicKey.CreatePublicKeyResponse instance GHC.Show.Show Network.AWS.CloudFront.CreatePublicKey.CreatePublicKeyResponse instance GHC.Read.Read Network.AWS.CloudFront.CreatePublicKey.CreatePublicKeyResponse instance GHC.Classes.Eq Network.AWS.CloudFront.CreatePublicKey.CreatePublicKeyResponse instance GHC.Generics.Generic Network.AWS.CloudFront.CreatePublicKey.CreatePublicKey instance Data.Data.Data Network.AWS.CloudFront.CreatePublicKey.CreatePublicKey instance GHC.Show.Show Network.AWS.CloudFront.CreatePublicKey.CreatePublicKey instance GHC.Read.Read Network.AWS.CloudFront.CreatePublicKey.CreatePublicKey instance GHC.Classes.Eq Network.AWS.CloudFront.CreatePublicKey.CreatePublicKey instance Network.AWS.Types.AWSRequest Network.AWS.CloudFront.CreatePublicKey.CreatePublicKey instance Control.DeepSeq.NFData Network.AWS.CloudFront.CreatePublicKey.CreatePublicKeyResponse instance Data.Hashable.Class.Hashable Network.AWS.CloudFront.CreatePublicKey.CreatePublicKey instance Control.DeepSeq.NFData Network.AWS.CloudFront.CreatePublicKey.CreatePublicKey instance Network.AWS.Data.XML.ToElement Network.AWS.CloudFront.CreatePublicKey.CreatePublicKey instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudFront.CreatePublicKey.CreatePublicKey instance Network.AWS.Data.Path.ToPath Network.AWS.CloudFront.CreatePublicKey.CreatePublicKey instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudFront.CreatePublicKey.CreatePublicKey -- | Create a new invalidation. module Network.AWS.CloudFront.CreateInvalidation -- | Creates a value of CreateInvalidation with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- createInvalidation :: Text -> InvalidationBatch -> CreateInvalidation -- | The request to create an invalidation. -- -- See: createInvalidation smart constructor. data CreateInvalidation -- | The distribution's id. ciDistributionId :: Lens' CreateInvalidation Text -- | The batch information for the invalidation. ciInvalidationBatch :: Lens' CreateInvalidation InvalidationBatch -- | Creates a value of CreateInvalidationResponse with the minimum -- fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- createInvalidationResponse :: Int -> CreateInvalidationResponse -- | The returned result of the corresponding request. -- -- See: createInvalidationResponse smart constructor. data CreateInvalidationResponse -- | The invalidation's information. cirsInvalidation :: Lens' CreateInvalidationResponse (Maybe Invalidation) -- | The fully qualified URI of the distribution and invalidation batch -- request, including the Invalidation ID . cirsLocation :: Lens' CreateInvalidationResponse (Maybe Text) -- | cirsResponseStatus :: Lens' CreateInvalidationResponse Int instance GHC.Generics.Generic Network.AWS.CloudFront.CreateInvalidation.CreateInvalidationResponse instance Data.Data.Data Network.AWS.CloudFront.CreateInvalidation.CreateInvalidationResponse instance GHC.Show.Show Network.AWS.CloudFront.CreateInvalidation.CreateInvalidationResponse instance GHC.Read.Read Network.AWS.CloudFront.CreateInvalidation.CreateInvalidationResponse instance GHC.Classes.Eq Network.AWS.CloudFront.CreateInvalidation.CreateInvalidationResponse instance GHC.Generics.Generic Network.AWS.CloudFront.CreateInvalidation.CreateInvalidation instance Data.Data.Data Network.AWS.CloudFront.CreateInvalidation.CreateInvalidation instance GHC.Show.Show Network.AWS.CloudFront.CreateInvalidation.CreateInvalidation instance GHC.Read.Read Network.AWS.CloudFront.CreateInvalidation.CreateInvalidation instance GHC.Classes.Eq Network.AWS.CloudFront.CreateInvalidation.CreateInvalidation instance Network.AWS.Types.AWSRequest Network.AWS.CloudFront.CreateInvalidation.CreateInvalidation instance Control.DeepSeq.NFData Network.AWS.CloudFront.CreateInvalidation.CreateInvalidationResponse instance Data.Hashable.Class.Hashable Network.AWS.CloudFront.CreateInvalidation.CreateInvalidation instance Control.DeepSeq.NFData Network.AWS.CloudFront.CreateInvalidation.CreateInvalidation instance Network.AWS.Data.XML.ToElement Network.AWS.CloudFront.CreateInvalidation.CreateInvalidation instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudFront.CreateInvalidation.CreateInvalidation instance Network.AWS.Data.Path.ToPath Network.AWS.CloudFront.CreateInvalidation.CreateInvalidation instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudFront.CreateInvalidation.CreateInvalidation -- | Create a field-level encryption profile. module Network.AWS.CloudFront.CreateFieldLevelEncryptionProfile -- | Creates a value of CreateFieldLevelEncryptionProfile with the -- minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- createFieldLevelEncryptionProfile :: FieldLevelEncryptionProfileConfig -> CreateFieldLevelEncryptionProfile -- | See: createFieldLevelEncryptionProfile smart -- constructor. data CreateFieldLevelEncryptionProfile -- | The request to create a field-level encryption profile. cflepFieldLevelEncryptionProfileConfig :: Lens' CreateFieldLevelEncryptionProfile FieldLevelEncryptionProfileConfig -- | Creates a value of CreateFieldLevelEncryptionProfileResponse -- with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- createFieldLevelEncryptionProfileResponse :: Int -> CreateFieldLevelEncryptionProfileResponse -- | See: createFieldLevelEncryptionProfileResponse smart -- constructor. data CreateFieldLevelEncryptionProfileResponse -- | The current version of the field level encryption profile. For -- example: E2QWRUHAPOMQZL . cfleprsETag :: Lens' CreateFieldLevelEncryptionProfileResponse (Maybe Text) -- | The fully qualified URI of the new profile resource just created. For -- example: -- https://cloudfront.amazonaws.com/2010-11-01/field-level-encryption-profile/EDFDVBD632BHDS5 -- . cfleprsLocation :: Lens' CreateFieldLevelEncryptionProfileResponse (Maybe Text) -- | Returned when you create a new field-level encryption profile. cfleprsFieldLevelEncryptionProfile :: Lens' CreateFieldLevelEncryptionProfileResponse (Maybe FieldLevelEncryptionProfile) -- | cfleprsResponseStatus :: Lens' CreateFieldLevelEncryptionProfileResponse Int instance GHC.Generics.Generic Network.AWS.CloudFront.CreateFieldLevelEncryptionProfile.CreateFieldLevelEncryptionProfileResponse instance Data.Data.Data Network.AWS.CloudFront.CreateFieldLevelEncryptionProfile.CreateFieldLevelEncryptionProfileResponse instance GHC.Show.Show Network.AWS.CloudFront.CreateFieldLevelEncryptionProfile.CreateFieldLevelEncryptionProfileResponse instance GHC.Read.Read Network.AWS.CloudFront.CreateFieldLevelEncryptionProfile.CreateFieldLevelEncryptionProfileResponse instance GHC.Classes.Eq Network.AWS.CloudFront.CreateFieldLevelEncryptionProfile.CreateFieldLevelEncryptionProfileResponse instance GHC.Generics.Generic Network.AWS.CloudFront.CreateFieldLevelEncryptionProfile.CreateFieldLevelEncryptionProfile instance Data.Data.Data Network.AWS.CloudFront.CreateFieldLevelEncryptionProfile.CreateFieldLevelEncryptionProfile instance GHC.Show.Show Network.AWS.CloudFront.CreateFieldLevelEncryptionProfile.CreateFieldLevelEncryptionProfile instance GHC.Read.Read Network.AWS.CloudFront.CreateFieldLevelEncryptionProfile.CreateFieldLevelEncryptionProfile instance GHC.Classes.Eq Network.AWS.CloudFront.CreateFieldLevelEncryptionProfile.CreateFieldLevelEncryptionProfile instance Network.AWS.Types.AWSRequest Network.AWS.CloudFront.CreateFieldLevelEncryptionProfile.CreateFieldLevelEncryptionProfile instance Control.DeepSeq.NFData Network.AWS.CloudFront.CreateFieldLevelEncryptionProfile.CreateFieldLevelEncryptionProfileResponse instance Data.Hashable.Class.Hashable Network.AWS.CloudFront.CreateFieldLevelEncryptionProfile.CreateFieldLevelEncryptionProfile instance Control.DeepSeq.NFData Network.AWS.CloudFront.CreateFieldLevelEncryptionProfile.CreateFieldLevelEncryptionProfile instance Network.AWS.Data.XML.ToElement Network.AWS.CloudFront.CreateFieldLevelEncryptionProfile.CreateFieldLevelEncryptionProfile instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudFront.CreateFieldLevelEncryptionProfile.CreateFieldLevelEncryptionProfile instance Network.AWS.Data.Path.ToPath Network.AWS.CloudFront.CreateFieldLevelEncryptionProfile.CreateFieldLevelEncryptionProfile instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudFront.CreateFieldLevelEncryptionProfile.CreateFieldLevelEncryptionProfile -- | Create a new field-level encryption configuration. module Network.AWS.CloudFront.CreateFieldLevelEncryptionConfig -- | Creates a value of CreateFieldLevelEncryptionConfig with the -- minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- createFieldLevelEncryptionConfig :: FieldLevelEncryptionConfig -> CreateFieldLevelEncryptionConfig -- | See: createFieldLevelEncryptionConfig smart constructor. data CreateFieldLevelEncryptionConfig -- | The request to create a new field-level encryption configuration. cflecFieldLevelEncryptionConfig :: Lens' CreateFieldLevelEncryptionConfig FieldLevelEncryptionConfig -- | Creates a value of CreateFieldLevelEncryptionConfigResponse -- with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- createFieldLevelEncryptionConfigResponse :: Int -> CreateFieldLevelEncryptionConfigResponse -- | See: createFieldLevelEncryptionConfigResponse smart -- constructor. data CreateFieldLevelEncryptionConfigResponse -- | The current version of the field level encryption configuration. For -- example: E2QWRUHAPOMQZL . cflecrsETag :: Lens' CreateFieldLevelEncryptionConfigResponse (Maybe Text) -- | The fully qualified URI of the new configuration resource just -- created. For example: -- https://cloudfront.amazonaws.com/2010-11-01/field-level-encryption-config/EDFDVBD632BHDS5 -- . cflecrsLocation :: Lens' CreateFieldLevelEncryptionConfigResponse (Maybe Text) -- | Returned when you create a new field-level encryption configuration. cflecrsFieldLevelEncryption :: Lens' CreateFieldLevelEncryptionConfigResponse (Maybe FieldLevelEncryption) -- | cflecrsResponseStatus :: Lens' CreateFieldLevelEncryptionConfigResponse Int instance GHC.Generics.Generic Network.AWS.CloudFront.CreateFieldLevelEncryptionConfig.CreateFieldLevelEncryptionConfigResponse instance Data.Data.Data Network.AWS.CloudFront.CreateFieldLevelEncryptionConfig.CreateFieldLevelEncryptionConfigResponse instance GHC.Show.Show Network.AWS.CloudFront.CreateFieldLevelEncryptionConfig.CreateFieldLevelEncryptionConfigResponse instance GHC.Read.Read Network.AWS.CloudFront.CreateFieldLevelEncryptionConfig.CreateFieldLevelEncryptionConfigResponse instance GHC.Classes.Eq Network.AWS.CloudFront.CreateFieldLevelEncryptionConfig.CreateFieldLevelEncryptionConfigResponse instance GHC.Generics.Generic Network.AWS.CloudFront.CreateFieldLevelEncryptionConfig.CreateFieldLevelEncryptionConfig instance Data.Data.Data Network.AWS.CloudFront.CreateFieldLevelEncryptionConfig.CreateFieldLevelEncryptionConfig instance GHC.Show.Show Network.AWS.CloudFront.CreateFieldLevelEncryptionConfig.CreateFieldLevelEncryptionConfig instance GHC.Read.Read Network.AWS.CloudFront.CreateFieldLevelEncryptionConfig.CreateFieldLevelEncryptionConfig instance GHC.Classes.Eq Network.AWS.CloudFront.CreateFieldLevelEncryptionConfig.CreateFieldLevelEncryptionConfig instance Network.AWS.Types.AWSRequest Network.AWS.CloudFront.CreateFieldLevelEncryptionConfig.CreateFieldLevelEncryptionConfig instance Control.DeepSeq.NFData Network.AWS.CloudFront.CreateFieldLevelEncryptionConfig.CreateFieldLevelEncryptionConfigResponse instance Data.Hashable.Class.Hashable Network.AWS.CloudFront.CreateFieldLevelEncryptionConfig.CreateFieldLevelEncryptionConfig instance Control.DeepSeq.NFData Network.AWS.CloudFront.CreateFieldLevelEncryptionConfig.CreateFieldLevelEncryptionConfig instance Network.AWS.Data.XML.ToElement Network.AWS.CloudFront.CreateFieldLevelEncryptionConfig.CreateFieldLevelEncryptionConfig instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudFront.CreateFieldLevelEncryptionConfig.CreateFieldLevelEncryptionConfig instance Network.AWS.Data.Path.ToPath Network.AWS.CloudFront.CreateFieldLevelEncryptionConfig.CreateFieldLevelEncryptionConfig instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudFront.CreateFieldLevelEncryptionConfig.CreateFieldLevelEncryptionConfig -- | Create a new distribution with tags. module Network.AWS.CloudFront.CreateDistributionWithTags -- | Creates a value of CreateDistributionWithTags with the minimum -- fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- createDistributionWithTags :: DistributionConfigWithTags -> CreateDistributionWithTags -- | The request to create a new distribution with tags. -- -- See: createDistributionWithTags smart constructor. data CreateDistributionWithTags -- | The distribution's configuration information. cdwtDistributionConfigWithTags :: Lens' CreateDistributionWithTags DistributionConfigWithTags -- | Creates a value of CreateDistributionWithTagsResponse with the -- minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- createDistributionWithTagsResponse :: Int -> CreateDistributionWithTagsResponse -- | The returned result of the corresponding request. -- -- See: createDistributionWithTagsResponse smart -- constructor. data CreateDistributionWithTagsResponse -- | The current version of the distribution created. cdwtrsETag :: Lens' CreateDistributionWithTagsResponse (Maybe Text) -- | The distribution's information. cdwtrsDistribution :: Lens' CreateDistributionWithTagsResponse (Maybe Distribution) -- | The fully qualified URI of the new distribution resource just created. -- For example: -- https://cloudfront.amazonaws.com/2010-11-01/distribution/EDFDVBD632BHDS5 -- . cdwtrsLocation :: Lens' CreateDistributionWithTagsResponse (Maybe Text) -- | cdwtrsResponseStatus :: Lens' CreateDistributionWithTagsResponse Int instance GHC.Generics.Generic Network.AWS.CloudFront.CreateDistributionWithTags.CreateDistributionWithTagsResponse instance Data.Data.Data Network.AWS.CloudFront.CreateDistributionWithTags.CreateDistributionWithTagsResponse instance GHC.Show.Show Network.AWS.CloudFront.CreateDistributionWithTags.CreateDistributionWithTagsResponse instance GHC.Read.Read Network.AWS.CloudFront.CreateDistributionWithTags.CreateDistributionWithTagsResponse instance GHC.Classes.Eq Network.AWS.CloudFront.CreateDistributionWithTags.CreateDistributionWithTagsResponse instance GHC.Generics.Generic Network.AWS.CloudFront.CreateDistributionWithTags.CreateDistributionWithTags instance Data.Data.Data Network.AWS.CloudFront.CreateDistributionWithTags.CreateDistributionWithTags instance GHC.Show.Show Network.AWS.CloudFront.CreateDistributionWithTags.CreateDistributionWithTags instance GHC.Read.Read Network.AWS.CloudFront.CreateDistributionWithTags.CreateDistributionWithTags instance GHC.Classes.Eq Network.AWS.CloudFront.CreateDistributionWithTags.CreateDistributionWithTags instance Network.AWS.Types.AWSRequest Network.AWS.CloudFront.CreateDistributionWithTags.CreateDistributionWithTags instance Control.DeepSeq.NFData Network.AWS.CloudFront.CreateDistributionWithTags.CreateDistributionWithTagsResponse instance Data.Hashable.Class.Hashable Network.AWS.CloudFront.CreateDistributionWithTags.CreateDistributionWithTags instance Control.DeepSeq.NFData Network.AWS.CloudFront.CreateDistributionWithTags.CreateDistributionWithTags instance Network.AWS.Data.XML.ToElement Network.AWS.CloudFront.CreateDistributionWithTags.CreateDistributionWithTags instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudFront.CreateDistributionWithTags.CreateDistributionWithTags instance Network.AWS.Data.Path.ToPath Network.AWS.CloudFront.CreateDistributionWithTags.CreateDistributionWithTags instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudFront.CreateDistributionWithTags.CreateDistributionWithTags -- | Creates a new web distribution. Send a POST request to the -- /CloudFront API version /distribution -- /distribution ID resource. module Network.AWS.CloudFront.CreateDistribution -- | Creates a value of CreateDistribution with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- createDistribution :: DistributionConfig -> CreateDistribution -- | The request to create a new distribution. -- -- See: createDistribution smart constructor. data CreateDistribution -- | The distribution's configuration information. cdDistributionConfig :: Lens' CreateDistribution DistributionConfig -- | Creates a value of CreateDistributionResponse with the minimum -- fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- createDistributionResponse :: Int -> CreateDistributionResponse -- | The returned result of the corresponding request. -- -- See: createDistributionResponse smart constructor. data CreateDistributionResponse -- | The current version of the distribution created. cdrsETag :: Lens' CreateDistributionResponse (Maybe Text) -- | The distribution's information. cdrsDistribution :: Lens' CreateDistributionResponse (Maybe Distribution) -- | The fully qualified URI of the new distribution resource just created. -- For example: -- https://cloudfront.amazonaws.com/2010-11-01/distribution/EDFDVBD632BHDS5 -- . cdrsLocation :: Lens' CreateDistributionResponse (Maybe Text) -- | cdrsResponseStatus :: Lens' CreateDistributionResponse Int instance GHC.Generics.Generic Network.AWS.CloudFront.CreateDistribution.CreateDistributionResponse instance Data.Data.Data Network.AWS.CloudFront.CreateDistribution.CreateDistributionResponse instance GHC.Show.Show Network.AWS.CloudFront.CreateDistribution.CreateDistributionResponse instance GHC.Read.Read Network.AWS.CloudFront.CreateDistribution.CreateDistributionResponse instance GHC.Classes.Eq Network.AWS.CloudFront.CreateDistribution.CreateDistributionResponse instance GHC.Generics.Generic Network.AWS.CloudFront.CreateDistribution.CreateDistribution instance Data.Data.Data Network.AWS.CloudFront.CreateDistribution.CreateDistribution instance GHC.Show.Show Network.AWS.CloudFront.CreateDistribution.CreateDistribution instance GHC.Read.Read Network.AWS.CloudFront.CreateDistribution.CreateDistribution instance GHC.Classes.Eq Network.AWS.CloudFront.CreateDistribution.CreateDistribution instance Network.AWS.Types.AWSRequest Network.AWS.CloudFront.CreateDistribution.CreateDistribution instance Control.DeepSeq.NFData Network.AWS.CloudFront.CreateDistribution.CreateDistributionResponse instance Data.Hashable.Class.Hashable Network.AWS.CloudFront.CreateDistribution.CreateDistribution instance Control.DeepSeq.NFData Network.AWS.CloudFront.CreateDistribution.CreateDistribution instance Network.AWS.Data.XML.ToElement Network.AWS.CloudFront.CreateDistribution.CreateDistribution instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudFront.CreateDistribution.CreateDistribution instance Network.AWS.Data.Path.ToPath Network.AWS.CloudFront.CreateDistribution.CreateDistribution instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudFront.CreateDistribution.CreateDistribution -- | Creates a new origin access identity. If you're using Amazon S3 for -- your origin, you can use an origin access identity to require users to -- access your content using a CloudFront URL instead of the Amazon S3 -- URL. For more information about how to use origin access identities, -- see Serving Private Content through CloudFront in the Amazon -- CloudFront Developer Guide . module Network.AWS.CloudFront.CreateCloudFrontOriginAccessIdentity -- | Creates a value of CreateCloudFrontOriginAccessIdentity with -- the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- createCloudFrontOriginAccessIdentity :: CloudFrontOriginAccessIdentityConfig -> CreateCloudFrontOriginAccessIdentity -- | The request to create a new origin access identity. -- -- See: createCloudFrontOriginAccessIdentity smart -- constructor. data CreateCloudFrontOriginAccessIdentity -- | The current configuration information for the identity. ccfoaiCloudFrontOriginAccessIdentityConfig :: Lens' CreateCloudFrontOriginAccessIdentity CloudFrontOriginAccessIdentityConfig -- | Creates a value of CreateCloudFrontOriginAccessIdentityResponse -- with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- createCloudFrontOriginAccessIdentityResponse :: Int -> CreateCloudFrontOriginAccessIdentityResponse -- | The returned result of the corresponding request. -- -- See: createCloudFrontOriginAccessIdentityResponse smart -- constructor. data CreateCloudFrontOriginAccessIdentityResponse -- | The current version of the origin access identity created. ccfoairsETag :: Lens' CreateCloudFrontOriginAccessIdentityResponse (Maybe Text) -- | 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 -- . ccfoairsLocation :: Lens' CreateCloudFrontOriginAccessIdentityResponse (Maybe Text) -- | The origin access identity's information. ccfoairsCloudFrontOriginAccessIdentity :: Lens' CreateCloudFrontOriginAccessIdentityResponse (Maybe CloudFrontOriginAccessIdentity) -- | ccfoairsResponseStatus :: Lens' CreateCloudFrontOriginAccessIdentityResponse Int instance GHC.Generics.Generic Network.AWS.CloudFront.CreateCloudFrontOriginAccessIdentity.CreateCloudFrontOriginAccessIdentityResponse instance Data.Data.Data Network.AWS.CloudFront.CreateCloudFrontOriginAccessIdentity.CreateCloudFrontOriginAccessIdentityResponse instance GHC.Show.Show Network.AWS.CloudFront.CreateCloudFrontOriginAccessIdentity.CreateCloudFrontOriginAccessIdentityResponse instance GHC.Read.Read Network.AWS.CloudFront.CreateCloudFrontOriginAccessIdentity.CreateCloudFrontOriginAccessIdentityResponse instance GHC.Classes.Eq Network.AWS.CloudFront.CreateCloudFrontOriginAccessIdentity.CreateCloudFrontOriginAccessIdentityResponse instance GHC.Generics.Generic Network.AWS.CloudFront.CreateCloudFrontOriginAccessIdentity.CreateCloudFrontOriginAccessIdentity instance Data.Data.Data Network.AWS.CloudFront.CreateCloudFrontOriginAccessIdentity.CreateCloudFrontOriginAccessIdentity instance GHC.Show.Show Network.AWS.CloudFront.CreateCloudFrontOriginAccessIdentity.CreateCloudFrontOriginAccessIdentity instance GHC.Read.Read Network.AWS.CloudFront.CreateCloudFrontOriginAccessIdentity.CreateCloudFrontOriginAccessIdentity instance GHC.Classes.Eq Network.AWS.CloudFront.CreateCloudFrontOriginAccessIdentity.CreateCloudFrontOriginAccessIdentity instance Network.AWS.Types.AWSRequest Network.AWS.CloudFront.CreateCloudFrontOriginAccessIdentity.CreateCloudFrontOriginAccessIdentity instance Control.DeepSeq.NFData Network.AWS.CloudFront.CreateCloudFrontOriginAccessIdentity.CreateCloudFrontOriginAccessIdentityResponse instance Data.Hashable.Class.Hashable Network.AWS.CloudFront.CreateCloudFrontOriginAccessIdentity.CreateCloudFrontOriginAccessIdentity instance Control.DeepSeq.NFData Network.AWS.CloudFront.CreateCloudFrontOriginAccessIdentity.CreateCloudFrontOriginAccessIdentity instance Network.AWS.Data.XML.ToElement Network.AWS.CloudFront.CreateCloudFrontOriginAccessIdentity.CreateCloudFrontOriginAccessIdentity instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudFront.CreateCloudFrontOriginAccessIdentity.CreateCloudFrontOriginAccessIdentity instance Network.AWS.Data.Path.ToPath Network.AWS.CloudFront.CreateCloudFrontOriginAccessIdentity.CreateCloudFrontOriginAccessIdentity instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudFront.CreateCloudFrontOriginAccessIdentity.CreateCloudFrontOriginAccessIdentity -- | Remove tags from a CloudFront resource. module Network.AWS.CloudFront.UntagResource -- | Creates a value of UntagResource with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- untagResource :: Text -> TagKeys -> UntagResource -- | The request to remove tags from a CloudFront resource. -- -- See: untagResource smart constructor. data UntagResource -- | An ARN of a CloudFront resource. urResource :: Lens' UntagResource Text -- | A complex type that contains zero or more Tag key elements. urTagKeys :: Lens' UntagResource TagKeys -- | Creates a value of UntagResourceResponse with the minimum -- fields required to make a request. untagResourceResponse :: UntagResourceResponse -- | See: untagResourceResponse smart constructor. data UntagResourceResponse instance GHC.Generics.Generic Network.AWS.CloudFront.UntagResource.UntagResourceResponse instance Data.Data.Data Network.AWS.CloudFront.UntagResource.UntagResourceResponse instance GHC.Show.Show Network.AWS.CloudFront.UntagResource.UntagResourceResponse instance GHC.Read.Read Network.AWS.CloudFront.UntagResource.UntagResourceResponse instance GHC.Classes.Eq Network.AWS.CloudFront.UntagResource.UntagResourceResponse instance GHC.Generics.Generic Network.AWS.CloudFront.UntagResource.UntagResource instance Data.Data.Data Network.AWS.CloudFront.UntagResource.UntagResource instance GHC.Show.Show Network.AWS.CloudFront.UntagResource.UntagResource instance GHC.Read.Read Network.AWS.CloudFront.UntagResource.UntagResource instance GHC.Classes.Eq Network.AWS.CloudFront.UntagResource.UntagResource instance Network.AWS.Types.AWSRequest Network.AWS.CloudFront.UntagResource.UntagResource instance Control.DeepSeq.NFData Network.AWS.CloudFront.UntagResource.UntagResourceResponse instance Data.Hashable.Class.Hashable Network.AWS.CloudFront.UntagResource.UntagResource instance Control.DeepSeq.NFData Network.AWS.CloudFront.UntagResource.UntagResource instance Network.AWS.Data.XML.ToElement Network.AWS.CloudFront.UntagResource.UntagResource instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudFront.UntagResource.UntagResource instance Network.AWS.Data.Path.ToPath Network.AWS.CloudFront.UntagResource.UntagResource instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudFront.UntagResource.UntagResource -- | Update an origin access identity. module Network.AWS.CloudFront.UpdateCloudFrontOriginAccessIdentity -- | Creates a value of UpdateCloudFrontOriginAccessIdentity with -- the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- updateCloudFrontOriginAccessIdentity :: CloudFrontOriginAccessIdentityConfig -> Text -> UpdateCloudFrontOriginAccessIdentity -- | The request to update an origin access identity. -- -- See: updateCloudFrontOriginAccessIdentity smart -- constructor. data UpdateCloudFrontOriginAccessIdentity -- | The value of the ETag header that you received when -- retrieving the identity's configuration. For example: -- E2QWRUHAPOMQZL . ucfoaiIfMatch :: Lens' UpdateCloudFrontOriginAccessIdentity (Maybe Text) -- | The identity's configuration information. ucfoaiCloudFrontOriginAccessIdentityConfig :: Lens' UpdateCloudFrontOriginAccessIdentity CloudFrontOriginAccessIdentityConfig -- | The identity's id. ucfoaiId :: Lens' UpdateCloudFrontOriginAccessIdentity Text -- | Creates a value of UpdateCloudFrontOriginAccessIdentityResponse -- with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- updateCloudFrontOriginAccessIdentityResponse :: Int -> UpdateCloudFrontOriginAccessIdentityResponse -- | The returned result of the corresponding request. -- -- See: updateCloudFrontOriginAccessIdentityResponse smart -- constructor. data UpdateCloudFrontOriginAccessIdentityResponse -- | The current version of the configuration. For example: -- E2QWRUHAPOMQZL . ucfoairsETag :: Lens' UpdateCloudFrontOriginAccessIdentityResponse (Maybe Text) -- | The origin access identity's information. ucfoairsCloudFrontOriginAccessIdentity :: Lens' UpdateCloudFrontOriginAccessIdentityResponse (Maybe CloudFrontOriginAccessIdentity) -- | ucfoairsResponseStatus :: Lens' UpdateCloudFrontOriginAccessIdentityResponse Int instance GHC.Generics.Generic Network.AWS.CloudFront.UpdateCloudFrontOriginAccessIdentity.UpdateCloudFrontOriginAccessIdentityResponse instance Data.Data.Data Network.AWS.CloudFront.UpdateCloudFrontOriginAccessIdentity.UpdateCloudFrontOriginAccessIdentityResponse instance GHC.Show.Show Network.AWS.CloudFront.UpdateCloudFrontOriginAccessIdentity.UpdateCloudFrontOriginAccessIdentityResponse instance GHC.Read.Read Network.AWS.CloudFront.UpdateCloudFrontOriginAccessIdentity.UpdateCloudFrontOriginAccessIdentityResponse instance GHC.Classes.Eq Network.AWS.CloudFront.UpdateCloudFrontOriginAccessIdentity.UpdateCloudFrontOriginAccessIdentityResponse instance GHC.Generics.Generic Network.AWS.CloudFront.UpdateCloudFrontOriginAccessIdentity.UpdateCloudFrontOriginAccessIdentity instance Data.Data.Data Network.AWS.CloudFront.UpdateCloudFrontOriginAccessIdentity.UpdateCloudFrontOriginAccessIdentity instance GHC.Show.Show Network.AWS.CloudFront.UpdateCloudFrontOriginAccessIdentity.UpdateCloudFrontOriginAccessIdentity instance GHC.Read.Read Network.AWS.CloudFront.UpdateCloudFrontOriginAccessIdentity.UpdateCloudFrontOriginAccessIdentity instance GHC.Classes.Eq Network.AWS.CloudFront.UpdateCloudFrontOriginAccessIdentity.UpdateCloudFrontOriginAccessIdentity instance Network.AWS.Types.AWSRequest Network.AWS.CloudFront.UpdateCloudFrontOriginAccessIdentity.UpdateCloudFrontOriginAccessIdentity instance Control.DeepSeq.NFData Network.AWS.CloudFront.UpdateCloudFrontOriginAccessIdentity.UpdateCloudFrontOriginAccessIdentityResponse instance Data.Hashable.Class.Hashable Network.AWS.CloudFront.UpdateCloudFrontOriginAccessIdentity.UpdateCloudFrontOriginAccessIdentity instance Control.DeepSeq.NFData Network.AWS.CloudFront.UpdateCloudFrontOriginAccessIdentity.UpdateCloudFrontOriginAccessIdentity instance Network.AWS.Data.XML.ToElement Network.AWS.CloudFront.UpdateCloudFrontOriginAccessIdentity.UpdateCloudFrontOriginAccessIdentity instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudFront.UpdateCloudFrontOriginAccessIdentity.UpdateCloudFrontOriginAccessIdentity instance Network.AWS.Data.Path.ToPath Network.AWS.CloudFront.UpdateCloudFrontOriginAccessIdentity.UpdateCloudFrontOriginAccessIdentity instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudFront.UpdateCloudFrontOriginAccessIdentity.UpdateCloudFrontOriginAccessIdentity -- | Updates the configuration for a web distribution. Perform the -- following steps. -- -- For information about updating a distribution using the CloudFront -- console, see Creating or Updating a Web Distribution Using the -- CloudFront Console in the Amazon CloudFront Developer Guide -- . -- -- To update a web distribution using the CloudFront API -- -- -- -- Important: The new configuration replaces the existing -- configuration; the values that you specify in an -- UpdateDistribution request are not merged into the existing -- configuration. When you add, delete, or replace values in an element -- that allows multiple values (for example, CNAME ), you must -- specify all of the values that you want to appear in the updated -- distribution. In addition, you must update the corresponding -- Quantity element. -- -- -- -- Important: Beginning with the 2012-05-05 version of the -- CloudFront API, we made substantial changes to the format of the XML -- document that you include in the request body when you create or -- update a distribution. With previous versions of the API, we -- discovered that it was too easy to accidentally delete one or more -- values for an element that accepts multiple values, for example, -- CNAMEs and trusted signers. Our changes for the 2012-05-05 release are -- intended to prevent these accidental deletions and to notify you when -- there's a mismatch between the number of values you say you're -- specifying in the Quantity element and the number of values -- you're actually specifying. module Network.AWS.CloudFront.UpdateDistribution -- | Creates a value of UpdateDistribution with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- updateDistribution :: DistributionConfig -> Text -> UpdateDistribution -- | The request to update a distribution. -- -- See: updateDistribution smart constructor. data UpdateDistribution -- | The value of the ETag header that you received when -- retrieving the distribution's configuration. For example: -- E2QWRUHAPOMQZL . udIfMatch :: Lens' UpdateDistribution (Maybe Text) -- | The distribution's configuration information. udDistributionConfig :: Lens' UpdateDistribution DistributionConfig -- | The distribution's id. udId :: Lens' UpdateDistribution Text -- | Creates a value of UpdateDistributionResponse with the minimum -- fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- updateDistributionResponse :: Int -> UpdateDistributionResponse -- | The returned result of the corresponding request. -- -- See: updateDistributionResponse smart constructor. data UpdateDistributionResponse -- | The current version of the configuration. For example: -- E2QWRUHAPOMQZL . udrsETag :: Lens' UpdateDistributionResponse (Maybe Text) -- | The distribution's information. udrsDistribution :: Lens' UpdateDistributionResponse (Maybe Distribution) -- | udrsResponseStatus :: Lens' UpdateDistributionResponse Int instance GHC.Generics.Generic Network.AWS.CloudFront.UpdateDistribution.UpdateDistributionResponse instance Data.Data.Data Network.AWS.CloudFront.UpdateDistribution.UpdateDistributionResponse instance GHC.Show.Show Network.AWS.CloudFront.UpdateDistribution.UpdateDistributionResponse instance GHC.Read.Read Network.AWS.CloudFront.UpdateDistribution.UpdateDistributionResponse instance GHC.Classes.Eq Network.AWS.CloudFront.UpdateDistribution.UpdateDistributionResponse instance GHC.Generics.Generic Network.AWS.CloudFront.UpdateDistribution.UpdateDistribution instance Data.Data.Data Network.AWS.CloudFront.UpdateDistribution.UpdateDistribution instance GHC.Show.Show Network.AWS.CloudFront.UpdateDistribution.UpdateDistribution instance GHC.Read.Read Network.AWS.CloudFront.UpdateDistribution.UpdateDistribution instance GHC.Classes.Eq Network.AWS.CloudFront.UpdateDistribution.UpdateDistribution instance Network.AWS.Types.AWSRequest Network.AWS.CloudFront.UpdateDistribution.UpdateDistribution instance Control.DeepSeq.NFData Network.AWS.CloudFront.UpdateDistribution.UpdateDistributionResponse instance Data.Hashable.Class.Hashable Network.AWS.CloudFront.UpdateDistribution.UpdateDistribution instance Control.DeepSeq.NFData Network.AWS.CloudFront.UpdateDistribution.UpdateDistribution instance Network.AWS.Data.XML.ToElement Network.AWS.CloudFront.UpdateDistribution.UpdateDistribution instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudFront.UpdateDistribution.UpdateDistribution instance Network.AWS.Data.Path.ToPath Network.AWS.CloudFront.UpdateDistribution.UpdateDistribution instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudFront.UpdateDistribution.UpdateDistribution -- | Update a field-level encryption configuration. module Network.AWS.CloudFront.UpdateFieldLevelEncryptionConfig -- | Creates a value of UpdateFieldLevelEncryptionConfig with the -- minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- updateFieldLevelEncryptionConfig :: FieldLevelEncryptionConfig -> Text -> UpdateFieldLevelEncryptionConfig -- | See: updateFieldLevelEncryptionConfig smart constructor. data UpdateFieldLevelEncryptionConfig -- | The value of the ETag header that you received when -- retrieving the configuration identity to update. For example: -- E2QWRUHAPOMQZL . uflecIfMatch :: Lens' UpdateFieldLevelEncryptionConfig (Maybe Text) -- | Request to update a field-level encryption configuration. uflecFieldLevelEncryptionConfig :: Lens' UpdateFieldLevelEncryptionConfig FieldLevelEncryptionConfig -- | The ID of the configuration you want to update. uflecId :: Lens' UpdateFieldLevelEncryptionConfig Text -- | Creates a value of UpdateFieldLevelEncryptionConfigResponse -- with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- updateFieldLevelEncryptionConfigResponse :: Int -> UpdateFieldLevelEncryptionConfigResponse -- | See: updateFieldLevelEncryptionConfigResponse smart -- constructor. data UpdateFieldLevelEncryptionConfigResponse -- | The value of the ETag header that you received when updating -- the configuration. For example: E2QWRUHAPOMQZL . uflecrsETag :: Lens' UpdateFieldLevelEncryptionConfigResponse (Maybe Text) -- | Return the results of updating the configuration. uflecrsFieldLevelEncryption :: Lens' UpdateFieldLevelEncryptionConfigResponse (Maybe FieldLevelEncryption) -- | uflecrsResponseStatus :: Lens' UpdateFieldLevelEncryptionConfigResponse Int instance GHC.Generics.Generic Network.AWS.CloudFront.UpdateFieldLevelEncryptionConfig.UpdateFieldLevelEncryptionConfigResponse instance Data.Data.Data Network.AWS.CloudFront.UpdateFieldLevelEncryptionConfig.UpdateFieldLevelEncryptionConfigResponse instance GHC.Show.Show Network.AWS.CloudFront.UpdateFieldLevelEncryptionConfig.UpdateFieldLevelEncryptionConfigResponse instance GHC.Read.Read Network.AWS.CloudFront.UpdateFieldLevelEncryptionConfig.UpdateFieldLevelEncryptionConfigResponse instance GHC.Classes.Eq Network.AWS.CloudFront.UpdateFieldLevelEncryptionConfig.UpdateFieldLevelEncryptionConfigResponse instance GHC.Generics.Generic Network.AWS.CloudFront.UpdateFieldLevelEncryptionConfig.UpdateFieldLevelEncryptionConfig instance Data.Data.Data Network.AWS.CloudFront.UpdateFieldLevelEncryptionConfig.UpdateFieldLevelEncryptionConfig instance GHC.Show.Show Network.AWS.CloudFront.UpdateFieldLevelEncryptionConfig.UpdateFieldLevelEncryptionConfig instance GHC.Read.Read Network.AWS.CloudFront.UpdateFieldLevelEncryptionConfig.UpdateFieldLevelEncryptionConfig instance GHC.Classes.Eq Network.AWS.CloudFront.UpdateFieldLevelEncryptionConfig.UpdateFieldLevelEncryptionConfig instance Network.AWS.Types.AWSRequest Network.AWS.CloudFront.UpdateFieldLevelEncryptionConfig.UpdateFieldLevelEncryptionConfig instance Control.DeepSeq.NFData Network.AWS.CloudFront.UpdateFieldLevelEncryptionConfig.UpdateFieldLevelEncryptionConfigResponse instance Data.Hashable.Class.Hashable Network.AWS.CloudFront.UpdateFieldLevelEncryptionConfig.UpdateFieldLevelEncryptionConfig instance Control.DeepSeq.NFData Network.AWS.CloudFront.UpdateFieldLevelEncryptionConfig.UpdateFieldLevelEncryptionConfig instance Network.AWS.Data.XML.ToElement Network.AWS.CloudFront.UpdateFieldLevelEncryptionConfig.UpdateFieldLevelEncryptionConfig instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudFront.UpdateFieldLevelEncryptionConfig.UpdateFieldLevelEncryptionConfig instance Network.AWS.Data.Path.ToPath Network.AWS.CloudFront.UpdateFieldLevelEncryptionConfig.UpdateFieldLevelEncryptionConfig instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudFront.UpdateFieldLevelEncryptionConfig.UpdateFieldLevelEncryptionConfig -- | Update a field-level encryption profile. module Network.AWS.CloudFront.UpdateFieldLevelEncryptionProfile -- | Creates a value of UpdateFieldLevelEncryptionProfile with the -- minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- updateFieldLevelEncryptionProfile :: FieldLevelEncryptionProfileConfig -> Text -> UpdateFieldLevelEncryptionProfile -- | See: updateFieldLevelEncryptionProfile smart -- constructor. data UpdateFieldLevelEncryptionProfile -- | The value of the ETag header that you received when -- retrieving the profile identity to update. For example: -- E2QWRUHAPOMQZL . uflepIfMatch :: Lens' UpdateFieldLevelEncryptionProfile (Maybe Text) -- | Request to update a field-level encryption profile. uflepFieldLevelEncryptionProfileConfig :: Lens' UpdateFieldLevelEncryptionProfile FieldLevelEncryptionProfileConfig -- | The ID of the field-level encryption profile request. uflepId :: Lens' UpdateFieldLevelEncryptionProfile Text -- | Creates a value of UpdateFieldLevelEncryptionProfileResponse -- with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- updateFieldLevelEncryptionProfileResponse :: Int -> UpdateFieldLevelEncryptionProfileResponse -- | See: updateFieldLevelEncryptionProfileResponse smart -- constructor. data UpdateFieldLevelEncryptionProfileResponse -- | The result of the field-level encryption profile request. ufleprsETag :: Lens' UpdateFieldLevelEncryptionProfileResponse (Maybe Text) -- | Return the results of updating the profile. ufleprsFieldLevelEncryptionProfile :: Lens' UpdateFieldLevelEncryptionProfileResponse (Maybe FieldLevelEncryptionProfile) -- | ufleprsResponseStatus :: Lens' UpdateFieldLevelEncryptionProfileResponse Int instance GHC.Generics.Generic Network.AWS.CloudFront.UpdateFieldLevelEncryptionProfile.UpdateFieldLevelEncryptionProfileResponse instance Data.Data.Data Network.AWS.CloudFront.UpdateFieldLevelEncryptionProfile.UpdateFieldLevelEncryptionProfileResponse instance GHC.Show.Show Network.AWS.CloudFront.UpdateFieldLevelEncryptionProfile.UpdateFieldLevelEncryptionProfileResponse instance GHC.Read.Read Network.AWS.CloudFront.UpdateFieldLevelEncryptionProfile.UpdateFieldLevelEncryptionProfileResponse instance GHC.Classes.Eq Network.AWS.CloudFront.UpdateFieldLevelEncryptionProfile.UpdateFieldLevelEncryptionProfileResponse instance GHC.Generics.Generic Network.AWS.CloudFront.UpdateFieldLevelEncryptionProfile.UpdateFieldLevelEncryptionProfile instance Data.Data.Data Network.AWS.CloudFront.UpdateFieldLevelEncryptionProfile.UpdateFieldLevelEncryptionProfile instance GHC.Show.Show Network.AWS.CloudFront.UpdateFieldLevelEncryptionProfile.UpdateFieldLevelEncryptionProfile instance GHC.Read.Read Network.AWS.CloudFront.UpdateFieldLevelEncryptionProfile.UpdateFieldLevelEncryptionProfile instance GHC.Classes.Eq Network.AWS.CloudFront.UpdateFieldLevelEncryptionProfile.UpdateFieldLevelEncryptionProfile instance Network.AWS.Types.AWSRequest Network.AWS.CloudFront.UpdateFieldLevelEncryptionProfile.UpdateFieldLevelEncryptionProfile instance Control.DeepSeq.NFData Network.AWS.CloudFront.UpdateFieldLevelEncryptionProfile.UpdateFieldLevelEncryptionProfileResponse instance Data.Hashable.Class.Hashable Network.AWS.CloudFront.UpdateFieldLevelEncryptionProfile.UpdateFieldLevelEncryptionProfile instance Control.DeepSeq.NFData Network.AWS.CloudFront.UpdateFieldLevelEncryptionProfile.UpdateFieldLevelEncryptionProfile instance Network.AWS.Data.XML.ToElement Network.AWS.CloudFront.UpdateFieldLevelEncryptionProfile.UpdateFieldLevelEncryptionProfile instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudFront.UpdateFieldLevelEncryptionProfile.UpdateFieldLevelEncryptionProfile instance Network.AWS.Data.Path.ToPath Network.AWS.CloudFront.UpdateFieldLevelEncryptionProfile.UpdateFieldLevelEncryptionProfile instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudFront.UpdateFieldLevelEncryptionProfile.UpdateFieldLevelEncryptionProfile -- | Update public key information. Note that the only value you can change -- is the comment. module Network.AWS.CloudFront.UpdatePublicKey -- | Creates a value of UpdatePublicKey with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- updatePublicKey :: PublicKeyConfig -> Text -> UpdatePublicKey -- | See: updatePublicKey smart constructor. data UpdatePublicKey -- | The value of the ETag header that you received when -- retrieving the public key to update. For example: -- E2QWRUHAPOMQZL . upkIfMatch :: Lens' UpdatePublicKey (Maybe Text) -- | Request to update public key information. upkPublicKeyConfig :: Lens' UpdatePublicKey PublicKeyConfig -- | ID of the public key to be updated. upkId :: Lens' UpdatePublicKey Text -- | Creates a value of UpdatePublicKeyResponse with the minimum -- fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- updatePublicKeyResponse :: Int -> UpdatePublicKeyResponse -- | See: updatePublicKeyResponse smart constructor. data UpdatePublicKeyResponse -- | The current version of the update public key result. For example: -- E2QWRUHAPOMQZL . upkrsETag :: Lens' UpdatePublicKeyResponse (Maybe Text) -- | Return the results of updating the public key. upkrsPublicKey :: Lens' UpdatePublicKeyResponse (Maybe PublicKey) -- | upkrsResponseStatus :: Lens' UpdatePublicKeyResponse Int instance GHC.Generics.Generic Network.AWS.CloudFront.UpdatePublicKey.UpdatePublicKeyResponse instance Data.Data.Data Network.AWS.CloudFront.UpdatePublicKey.UpdatePublicKeyResponse instance GHC.Show.Show Network.AWS.CloudFront.UpdatePublicKey.UpdatePublicKeyResponse instance GHC.Read.Read Network.AWS.CloudFront.UpdatePublicKey.UpdatePublicKeyResponse instance GHC.Classes.Eq Network.AWS.CloudFront.UpdatePublicKey.UpdatePublicKeyResponse instance GHC.Generics.Generic Network.AWS.CloudFront.UpdatePublicKey.UpdatePublicKey instance Data.Data.Data Network.AWS.CloudFront.UpdatePublicKey.UpdatePublicKey instance GHC.Show.Show Network.AWS.CloudFront.UpdatePublicKey.UpdatePublicKey instance GHC.Read.Read Network.AWS.CloudFront.UpdatePublicKey.UpdatePublicKey instance GHC.Classes.Eq Network.AWS.CloudFront.UpdatePublicKey.UpdatePublicKey instance Network.AWS.Types.AWSRequest Network.AWS.CloudFront.UpdatePublicKey.UpdatePublicKey instance Control.DeepSeq.NFData Network.AWS.CloudFront.UpdatePublicKey.UpdatePublicKeyResponse instance Data.Hashable.Class.Hashable Network.AWS.CloudFront.UpdatePublicKey.UpdatePublicKey instance Control.DeepSeq.NFData Network.AWS.CloudFront.UpdatePublicKey.UpdatePublicKey instance Network.AWS.Data.XML.ToElement Network.AWS.CloudFront.UpdatePublicKey.UpdatePublicKey instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudFront.UpdatePublicKey.UpdatePublicKey instance Network.AWS.Data.Path.ToPath Network.AWS.CloudFront.UpdatePublicKey.UpdatePublicKey instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudFront.UpdatePublicKey.UpdatePublicKey -- | Update a streaming distribution. module Network.AWS.CloudFront.UpdateStreamingDistribution -- | Creates a value of UpdateStreamingDistribution with the minimum -- fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- updateStreamingDistribution :: StreamingDistributionConfig -> Text -> UpdateStreamingDistribution -- | The request to update a streaming distribution. -- -- See: updateStreamingDistribution smart constructor. data UpdateStreamingDistribution -- | The value of the ETag header that you received when -- retrieving the streaming distribution's configuration. For example: -- E2QWRUHAPOMQZL . usdIfMatch :: Lens' UpdateStreamingDistribution (Maybe Text) -- | The streaming distribution's configuration information. usdStreamingDistributionConfig :: Lens' UpdateStreamingDistribution StreamingDistributionConfig -- | The streaming distribution's id. usdId :: Lens' UpdateStreamingDistribution Text -- | Creates a value of UpdateStreamingDistributionResponse with the -- minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- updateStreamingDistributionResponse :: Int -> UpdateStreamingDistributionResponse -- | The returned result of the corresponding request. -- -- See: updateStreamingDistributionResponse smart -- constructor. data UpdateStreamingDistributionResponse -- | The current version of the configuration. For example: -- E2QWRUHAPOMQZL . usdrsETag :: Lens' UpdateStreamingDistributionResponse (Maybe Text) -- | The streaming distribution's information. usdrsStreamingDistribution :: Lens' UpdateStreamingDistributionResponse (Maybe StreamingDistribution) -- | usdrsResponseStatus :: Lens' UpdateStreamingDistributionResponse Int instance GHC.Generics.Generic Network.AWS.CloudFront.UpdateStreamingDistribution.UpdateStreamingDistributionResponse instance Data.Data.Data Network.AWS.CloudFront.UpdateStreamingDistribution.UpdateStreamingDistributionResponse instance GHC.Show.Show Network.AWS.CloudFront.UpdateStreamingDistribution.UpdateStreamingDistributionResponse instance GHC.Read.Read Network.AWS.CloudFront.UpdateStreamingDistribution.UpdateStreamingDistributionResponse instance GHC.Classes.Eq Network.AWS.CloudFront.UpdateStreamingDistribution.UpdateStreamingDistributionResponse instance GHC.Generics.Generic Network.AWS.CloudFront.UpdateStreamingDistribution.UpdateStreamingDistribution instance Data.Data.Data Network.AWS.CloudFront.UpdateStreamingDistribution.UpdateStreamingDistribution instance GHC.Show.Show Network.AWS.CloudFront.UpdateStreamingDistribution.UpdateStreamingDistribution instance GHC.Read.Read Network.AWS.CloudFront.UpdateStreamingDistribution.UpdateStreamingDistribution instance GHC.Classes.Eq Network.AWS.CloudFront.UpdateStreamingDistribution.UpdateStreamingDistribution instance Network.AWS.Types.AWSRequest Network.AWS.CloudFront.UpdateStreamingDistribution.UpdateStreamingDistribution instance Control.DeepSeq.NFData Network.AWS.CloudFront.UpdateStreamingDistribution.UpdateStreamingDistributionResponse instance Data.Hashable.Class.Hashable Network.AWS.CloudFront.UpdateStreamingDistribution.UpdateStreamingDistribution instance Control.DeepSeq.NFData Network.AWS.CloudFront.UpdateStreamingDistribution.UpdateStreamingDistribution instance Network.AWS.Data.XML.ToElement Network.AWS.CloudFront.UpdateStreamingDistribution.UpdateStreamingDistribution instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudFront.UpdateStreamingDistribution.UpdateStreamingDistribution instance Network.AWS.Data.Path.ToPath Network.AWS.CloudFront.UpdateStreamingDistribution.UpdateStreamingDistribution instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudFront.UpdateStreamingDistribution.UpdateStreamingDistribution module Network.AWS.CloudFront.Waiters -- | Polls GetStreamingDistribution every 60 seconds until a -- successful state is reached. An error is returned after 25 failed -- checks. streamingDistributionDeployed :: Wait GetStreamingDistribution -- | Polls GetDistribution every 60 seconds until a successful state -- is reached. An error is returned after 25 failed checks. distributionDeployed :: Wait GetDistribution -- | Polls GetInvalidation every 20 seconds until a successful state -- is reached. An error is returned after 30 failed checks. invalidationCompleted :: Wait GetInvalidation -- | Amazon CloudFront is a web service that speeds up distribution of your -- static and dynamic web content, for example, .html, .css, .php, image, -- and media files, to end users. CloudFront delivers your content -- through a worldwide network of edge locations. When an end user -- requests content that you're serving with CloudFront, the user is -- routed to the edge location that provides the lowest latency, so -- content is delivered with the best possible performance. If the -- content is already in that edge location, CloudFront delivers it -- immediately. If the content is not currently in that edge location, -- CloudFront retrieves it from an Amazon S3 bucket or an HTTP server -- (for example, a web server) that you have identified as the source for -- the definitive version of your content. module Network.AWS.CloudFront -- | API version 2017-10-30 of the Amazon CloudFront SDK -- configuration. cloudFront :: Service -- | Prism for TooManyOriginCustomHeaders' errors. _TooManyOriginCustomHeaders :: AsError a => Getting (First ServiceError) a ServiceError -- | Prism for InvalidTagging' errors. _InvalidTagging :: AsError a => Getting (First ServiceError) a ServiceError -- | Prism for InvalidErrorCode' errors. _InvalidErrorCode :: AsError a => Getting (First ServiceError) a ServiceError -- | The specified profile for field-level encryption doesn't exist. _NoSuchFieldLevelEncryptionProfile :: AsError a => Getting (First ServiceError) a ServiceError -- | The specified profile for field-level encryption is in use. _FieldLevelEncryptionProfileInUse :: AsError a => Getting (First ServiceError) a ServiceError -- | Prism for InvalidOriginReadTimeout' errors. _InvalidOriginReadTimeout :: AsError a => Getting (First ServiceError) a ServiceError -- | The maximum number of profiles for field-level encryption have been -- created. _TooManyFieldLevelEncryptionProfiles :: AsError a => Getting (First ServiceError) a ServiceError -- | You cannot create more cache behaviors for the distribution. _TooManyCacheBehaviors :: AsError a => Getting (First ServiceError) a ServiceError -- | Processing your request would cause you to exceed the maximum number -- of origin access identities allowed. _TooManyCloudFrontOriginAccessIdentities :: AsError a => Getting (First ServiceError) a ServiceError -- | The origin access identity is not valid or doesn't exist. _InvalidOriginAccessIdentity :: AsError a => Getting (First ServiceError) a ServiceError -- | Prism for DistributionNotDisabled' errors. _DistributionNotDisabled :: AsError a => Getting (First ServiceError) a ServiceError -- | The specified streaming distribution does not exist. _NoSuchStreamingDistribution :: AsError a => Getting (First ServiceError) a ServiceError -- | The value of Quantity and the size of Items don't -- match. _InconsistentQuantities :: AsError a => Getting (First ServiceError) a ServiceError -- | The argument is invalid. _InvalidArgument :: AsError a => Getting (First ServiceError) a ServiceError -- | Prism for InvalidOriginKeepaliveTimeout' errors. _InvalidOriginKeepaliveTimeout :: AsError a => Getting (First ServiceError) a ServiceError -- | You have exceeded the maximum number of allowable InProgress -- invalidation batch requests, or invalidation objects. _TooManyInvalidationsInProgress :: AsError a => Getting (First ServiceError) a ServiceError -- | Prism for InvalidWebACLId' errors. _InvalidWebACLId :: AsError a => Getting (First ServiceError) a ServiceError -- | Prism for TooManyQueryStringParameters' errors. _TooManyQueryStringParameters :: AsError a => Getting (First ServiceError) a ServiceError -- | The maximum number of query arg profiles for field-level encryption -- have been created. _TooManyFieldLevelEncryptionQueryArgProfiles :: AsError a => Getting (First ServiceError) a ServiceError -- | Your request contains more CNAMEs than are allowed per distribution. _TooManyDistributionCNAMEs :: AsError a => Getting (First ServiceError) a ServiceError -- | The specified origin access identity does not exist. _NoSuchCloudFrontOriginAccessIdentity :: AsError a => Getting (First ServiceError) a ServiceError -- | Prism for CloudFrontOriginAccessIdentityInUse' errors. _CloudFrontOriginAccessIdentityInUse :: AsError a => Getting (First ServiceError) a ServiceError -- | Processing your request would cause you to exceed the maximum number -- of streaming distributions allowed. _TooManyStreamingDistributions :: AsError a => Getting (First ServiceError) a ServiceError -- | You can't change the value of a public key. _CannotChangeImmutablePublicKeyFields :: AsError a => Getting (First ServiceError) a ServiceError -- | Prism for BatchTooLarge' errors. _BatchTooLarge :: AsError a => Getting (First ServiceError) a ServiceError -- | Your request contains more cookie names in the whitelist than are -- allowed per cache behavior. _TooManyCookieNamesInWhiteList :: AsError a => Getting (First ServiceError) a ServiceError -- | The specified Lambda function association is invalid. _InvalidLambdaFunctionAssociation :: AsError a => Getting (First ServiceError) a ServiceError -- | Your request contains forward cookies option which doesn't match with -- the expectation for the whitelisted list of cookie names. -- Either list of cookie names has been specified when not allowed or -- list of cookie names is missing when expected. _InvalidForwardCookies :: AsError a => Getting (First ServiceError) a ServiceError -- | The specified configuration for field-level encryption is in use. _FieldLevelEncryptionConfigInUse :: AsError a => Getting (First ServiceError) a ServiceError -- | Your request contains more trusted signers than are allowed per -- distribution. _TooManyTrustedSigners :: AsError a => Getting (First ServiceError) a ServiceError -- | The Amazon S3 origin server specified does not refer to a valid Amazon -- S3 bucket. _InvalidOrigin :: AsError a => Getting (First ServiceError) a ServiceError -- | The specified invalidation does not exist. _NoSuchInvalidation :: AsError a => Getting (First ServiceError) a ServiceError -- | The specified public key already exists. _PublicKeyAlreadyExists :: AsError a => Getting (First ServiceError) a ServiceError -- | No origin exists with the specified Origin Id . _NoSuchOrigin :: AsError a => Getting (First ServiceError) a ServiceError -- | Prism for InvalidTTLOrder' errors. _InvalidTTLOrder :: AsError a => Getting (First ServiceError) a ServiceError -- | Prism for StreamingDistributionNotDisabled' errors. _StreamingDistributionNotDisabled :: AsError a => Getting (First ServiceError) a ServiceError -- | Prism for TooManyHeadersInForwardedValues' errors. _TooManyHeadersInForwardedValues :: AsError a => Getting (First ServiceError) a ServiceError -- | Prism for NoSuchResource' errors. _NoSuchResource :: AsError a => Getting (First ServiceError) a ServiceError -- | The maximum number of encryption entities for field-level encryption -- have been created. _TooManyFieldLevelEncryptionEncryptionEntities :: AsError a => Getting (First ServiceError) a ServiceError -- | Prism for TooManyStreamingDistributionCNAMEs' errors. _TooManyStreamingDistributionCNAMEs :: AsError a => Getting (First ServiceError) a ServiceError -- | The specified profile for field-level encryption already exists. _FieldLevelEncryptionProfileAlreadyExists :: AsError a => Getting (First ServiceError) a ServiceError -- | Prism for ResourceInUse' errors. _ResourceInUse :: AsError a => Getting (First ServiceError) a ServiceError -- | This operation requires the HTTPS protocol. Ensure that you specify -- the HTTPS protocol in your request, or omit the -- RequiredProtocols element from your distribution -- configuration. _InvalidRequiredProtocol :: AsError a => Getting (First ServiceError) a ServiceError -- | Processing your request would cause you to exceed the maximum number -- of distributions allowed. _TooManyDistributions :: AsError a => Getting (First ServiceError) a ServiceError -- | You cannot create anymore custom SSL/TLS certificates. _TooManyCertificates :: AsError a => Getting (First ServiceError) a ServiceError -- | The caller reference you attempted to create the distribution with is -- associated with another distribution. _DistributionAlreadyExists :: AsError a => Getting (First ServiceError) a ServiceError -- | The maximum number of distributions have been associated with the -- specified configuration for field-level encryption. _TooManyDistributionsAssociatedToFieldLevelEncryptionConfig :: AsError a => Getting (First ServiceError) a ServiceError -- | Prism for InvalidQueryStringParameters' errors. _InvalidQueryStringParameters :: AsError a => Getting (First ServiceError) a ServiceError -- | This operation requires a body. Ensure that the body is present and -- the Content-Type header is set. _MissingBody :: AsError a => Getting (First ServiceError) a ServiceError -- | The specified configuration for field-level encryption can't be -- associated with the specified cache behavior. _IllegalFieldLevelEncryptionConfigAssociationWithCacheBehavior :: AsError a => Getting (First ServiceError) a ServiceError -- | Origin and CallerReference cannot be updated. _IllegalUpdate :: AsError a => Getting (First ServiceError) a ServiceError -- | The If-Match version is missing or not valid for the -- distribution. _InvalidIfMatchVersion :: AsError a => Getting (First ServiceError) a ServiceError -- | The specified configuration for field-level encryption already exists. _FieldLevelEncryptionConfigAlreadyExists :: AsError a => Getting (First ServiceError) a ServiceError -- | The precondition given in one or more of the request-header fields -- evaluated to false . _PreconditionFailed :: AsError a => Getting (First ServiceError) a ServiceError -- | Prism for InvalidResponseCode' errors. _InvalidResponseCode :: AsError a => Getting (First ServiceError) a ServiceError -- | Prism for InvalidHeadersForS3Origin' errors. _InvalidHeadersForS3Origin :: AsError a => Getting (First ServiceError) a ServiceError -- | Prism for CNAMEAlreadyExists' errors. _CNAMEAlreadyExists :: AsError a => Getting (First ServiceError) a ServiceError -- | The specified public key doesn't exist. _NoSuchPublicKey :: AsError a => Getting (First ServiceError) a ServiceError -- | The specified public key is in use. _PublicKeyInUse :: AsError a => Getting (First ServiceError) a ServiceError -- | One or more of your trusted signers don't exist. _TrustedSignerDoesNotExist :: AsError a => Getting (First ServiceError) a ServiceError -- | You cannot specify SSLv3 as the minimum protocol version if you only -- want to support only clients that support Server Name Indication -- (SNI). _InvalidProtocolSettings :: AsError a => Getting (First ServiceError) a ServiceError -- | The maximum number of public keys for field-level encryption have been -- created. To create a new public key, delete one of the existing keys. _TooManyPublicKeys :: AsError a => Getting (First ServiceError) a ServiceError -- | The specified configuration for field-level encryption doesn't exist. _NoSuchFieldLevelEncryptionConfig :: AsError a => Getting (First ServiceError) a ServiceError -- | The maximum number of content type profiles for field-level encryption -- have been created. _TooManyFieldLevelEncryptionContentTypeProfiles :: AsError a => Getting (First ServiceError) a ServiceError -- | The maximum number of field patterns for field-level encryption have -- been created. _TooManyFieldLevelEncryptionFieldPatterns :: AsError a => Getting (First ServiceError) a ServiceError -- | The maximum number of configurations for field-level encryption have -- been created. _TooManyFieldLevelEncryptionConfigs :: AsError a => Getting (First ServiceError) a ServiceError -- | Your request contains more Lambda function associations than are -- allowed per distribution. _TooManyLambdaFunctionAssociations :: AsError a => Getting (First ServiceError) a ServiceError -- | 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. _CloudFrontOriginAccessIdentityAlreadyExists :: AsError a => Getting (First ServiceError) a ServiceError -- | You cannot create more origins for the distribution. _TooManyOrigins :: AsError a => Getting (First ServiceError) a ServiceError -- | The relative path is too big, is not URL-encoded, or does not begin -- with a slash (/). _InvalidRelativePath :: AsError a => Getting (First ServiceError) a ServiceError -- | Prism for StreamingDistributionAlreadyExists' errors. _StreamingDistributionAlreadyExists :: AsError a => Getting (First ServiceError) a ServiceError -- | No profile specified for the field-level encryption query argument. _QueryArgProfileEmpty :: AsError a => Getting (First ServiceError) a ServiceError -- | Prism for InvalidMinimumProtocolVersion' errors. _InvalidMinimumProtocolVersion :: AsError a => Getting (First ServiceError) a ServiceError -- | Access denied. _AccessDenied :: AsError a => Getting (First ServiceError) a ServiceError -- | Prism for InvalidViewerCertificate' errors. _InvalidViewerCertificate :: AsError a => Getting (First ServiceError) a ServiceError -- | The specified distribution does not exist. _NoSuchDistribution :: AsError a => Getting (First ServiceError) a ServiceError -- | The maximum size of a profile for field-level encryption was exceeded. _FieldLevelEncryptionProfileSizeExceeded :: AsError a => Getting (First ServiceError) a ServiceError -- | The default root object file name is too big or contains an invalid -- character. _InvalidDefaultRootObject :: AsError a => Getting (First ServiceError) a ServiceError -- | Processing your request would cause the maximum number of -- distributions with Lambda function associations per owner to be -- exceeded. _TooManyDistributionsWithLambdaAssociations :: AsError a => Getting (First ServiceError) a ServiceError -- | Prism for InvalidGeoRestrictionParameter' errors. _InvalidGeoRestrictionParameter :: AsError a => Getting (First ServiceError) a ServiceError -- | Prism for InvalidLocationCode' errors. _InvalidLocationCode :: AsError a => Getting (First ServiceError) a ServiceError -- | Polls GetStreamingDistribution every 60 seconds until a -- successful state is reached. An error is returned after 25 failed -- checks. streamingDistributionDeployed :: Wait GetStreamingDistribution -- | Polls GetDistribution every 60 seconds until a successful state -- is reached. An error is returned after 25 failed checks. distributionDeployed :: Wait GetDistribution -- | Polls GetInvalidation every 20 seconds until a successful state -- is reached. An error is returned after 30 failed checks. invalidationCompleted :: Wait GetInvalidation data CertificateSource Acm :: CertificateSource Cloudfront :: CertificateSource IAM :: CertificateSource data EventType OriginRequest :: EventType OriginResponse :: EventType ViewerRequest :: EventType ViewerResponse :: EventType data Format URLEncoded :: Format data GeoRestrictionType Blacklist :: GeoRestrictionType None :: GeoRestrictionType Whitelist :: GeoRestrictionType data HTTPVersion HTTP1_1 :: HTTPVersion HTTP2 :: HTTPVersion data ItemSelection ISAll :: ItemSelection ISNone :: ItemSelection ISWhitelist :: ItemSelection data Method Delete :: Method Get :: Method Head :: Method Options :: Method Patch :: Method Post :: Method Put :: Method data MinimumProtocolVersion MPVSSLV3 :: MinimumProtocolVersion MPVTLSV1 :: MinimumProtocolVersion MPVTLSV12016 :: MinimumProtocolVersion MPVTLSV1_12016 :: MinimumProtocolVersion MPVTLSV1_22018 :: MinimumProtocolVersion data OriginProtocolPolicy HTTPOnly :: OriginProtocolPolicy HTTPSOnly :: OriginProtocolPolicy MatchViewer :: OriginProtocolPolicy data PriceClass PriceClass100 :: PriceClass PriceClass200 :: PriceClass PriceClassAll :: PriceClass data SSLProtocol SSLV3 :: SSLProtocol TLSV1 :: SSLProtocol TLSV1_1 :: SSLProtocol TLSV1_2 :: SSLProtocol data SSLSupportMethod SNIOnly :: SSLSupportMethod VIP :: SSLSupportMethod data ViewerProtocolPolicy VPPAllowAll :: ViewerProtocolPolicy VPPHTTPSOnly :: ViewerProtocolPolicy VPPRedirectToHTTPS :: ViewerProtocolPolicy -- | A complex type that lists the AWS accounts, if any, that you included -- in the TrustedSigners complex type for this distribution. -- These are the accounts that you want to allow to create signed URLs -- for private content. -- -- The Signer complex type lists the AWS account number of the -- trusted signer or self if the signer is the AWS account that -- created the distribution. The Signer element also includes -- the IDs of any active CloudFront key pairs that are associated with -- the trusted signer's AWS account. If no KeyPairId element -- appears for a Signer , that signer can't create signed URLs. -- -- For more information, see Serving Private Content through -- CloudFront in the Amazon CloudFront Developer Guide . -- -- See: activeTrustedSigners smart constructor. data ActiveTrustedSigners -- | Creates a value of ActiveTrustedSigners with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- activeTrustedSigners :: Bool -> Int -> ActiveTrustedSigners -- | A complex type that contains one Signer complex type for each -- trusted signer that is specified in the TrustedSigners -- complex type. For more information, see ActiveTrustedSigners . atsItems :: Lens' ActiveTrustedSigners [Signer] -- | Enabled is true if any of the AWS accounts listed in the -- TrustedSigners complex type for this RTMP distribution have -- active CloudFront key pairs. If not, Enabled is -- false . For more information, see ActiveTrustedSigners -- . atsEnabled :: Lens' ActiveTrustedSigners Bool -- | A complex type that contains one Signer complex type for each -- trusted signer specified in the TrustedSigners complex type. -- For more information, see ActiveTrustedSigners . atsQuantity :: Lens' ActiveTrustedSigners Int -- | A complex type that contains information about CNAMEs (alternate -- domain names), if any, for this distribution. -- -- See: aliases smart constructor. data Aliases -- | Creates a value of Aliases with the minimum fields required to -- make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- aliases :: Int -> Aliases -- | A complex type that contains the CNAME aliases, if any, that you want -- to associate with this distribution. aItems :: Lens' Aliases [Text] -- | The number of CNAME aliases, if any, that you want to associate with -- this distribution. aQuantity :: Lens' Aliases Int -- | 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: -- -- -- -- If you pick the third choice, you may need to restrict access to your -- Amazon S3 bucket or to your custom origin so users can't perform -- operations that you don't want them to. For example, you might not -- want users to have permissions to delete objects from your origin. -- -- See: allowedMethods smart constructor. data AllowedMethods -- | Creates a value of AllowedMethods with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- allowedMethods :: Int -> AllowedMethods -- | Undocumented member. amCachedMethods :: Lens' AllowedMethods (Maybe CachedMethods) -- | 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). amQuantity :: Lens' AllowedMethods Int -- | A complex type that contains the HTTP methods that you want CloudFront -- to process and forward to your origin. amItems :: Lens' AllowedMethods [Method] -- | A complex type that describes how CloudFront processes requests. -- -- You must create at least as many cache behaviors (including the -- default cache behavior) as you have origins if you want CloudFront to -- distribute objects from all of the origins. Each cache behavior -- specifies the one origin from which you want CloudFront to get -- objects. If you have two origins and only the default cache behavior, -- the default cache behavior will cause CloudFront to get objects from -- one of the origins, but the other origin is never used. -- -- For the current limit on the number of cache behaviors that you can -- add to a distribution, see Amazon CloudFront Limits in the -- AWS General Reference . -- -- If you don't want to specify any cache behaviors, include only an -- empty CacheBehaviors element. Don't include an empty -- CacheBehavior element, or CloudFront returns a -- MalformedXML error. -- -- To delete all cache behaviors in an existing distribution, update the -- distribution configuration and include only an empty -- CacheBehaviors element. -- -- To add, change, or remove one or more cache behaviors, update the -- distribution configuration and specify all of the cache behaviors that -- you want to include in the updated distribution. -- -- For more information about cache behaviors, see Cache Behaviors -- in the Amazon CloudFront Developer Guide . -- -- See: cacheBehavior smart constructor. data CacheBehavior -- | Creates a value of CacheBehavior with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- cacheBehavior :: Text -> Text -> ForwardedValues -> TrustedSigners -> ViewerProtocolPolicy -> Integer -> CacheBehavior -- | Undocumented member. cbAllowedMethods :: Lens' CacheBehavior (Maybe AllowedMethods) -- | A complex type that contains zero or more Lambda function associations -- for a cache behavior. cbLambdaFunctionAssociations :: Lens' CacheBehavior (Maybe LambdaFunctionAssociations) -- | The maximum amount of time that you want objects to stay in CloudFront -- caches before CloudFront forwards another request to your origin to -- determine whether the object has been updated. The value that you -- specify applies only when your origin adds HTTP headers such as -- Cache-Control max-age , Cache-Control s-maxage , and -- Expires to objects. For more information, see Specifying -- How Long Objects and Errors Stay in a CloudFront Edge Cache -- (Expiration) in the Amazon CloudFront Developer Guide . cbMaxTTL :: Lens' CacheBehavior (Maybe Integer) -- | Whether you want CloudFront to automatically compress certain files -- for this cache behavior. If so, specify true; if not, specify false. -- For more information, see Serving Compressed Files in the -- Amazon CloudFront Developer Guide . cbCompress :: Lens' CacheBehavior (Maybe Bool) -- | Indicates whether you want to distribute media files in the Microsoft -- Smooth Streaming format using the origin that is associated with this -- cache behavior. If so, specify true ; if not, specify -- false . If you specify true for -- SmoothStreaming , you can still distribute other content -- using this cache behavior if the content matches the value of -- PathPattern . cbSmoothStreaming :: Lens' CacheBehavior (Maybe Bool) -- | The default amount of time that you want objects to stay in CloudFront -- caches before CloudFront forwards another request to your origin to -- determine whether the object has been updated. The value that you -- specify applies only when your origin does not add HTTP headers such -- as Cache-Control max-age , Cache-Control s-maxage , -- and Expires to objects. For more information, see -- Specifying How Long Objects and Errors Stay in a CloudFront Edge -- Cache (Expiration) in the Amazon CloudFront Developer Guide -- . cbDefaultTTL :: Lens' CacheBehavior (Maybe Integer) -- | Undocumented member. cbFieldLevelEncryptionId :: Lens' CacheBehavior (Maybe Text) -- | The pattern (for example, images/*.jpg ) that specifies which -- requests to apply the behavior to. When CloudFront receives a viewer -- request, the requested path is compared with path patterns in the -- order in which cache behaviors are listed in the distribution. The -- path pattern for the default cache behavior is * and cannot -- be changed. If the request for an object does not match the path -- pattern for any cache behaviors, CloudFront applies the behavior in -- the default cache behavior. For more information, see Path -- Pattern in the Amazon CloudFront Developer Guide . cbPathPattern :: Lens' CacheBehavior Text -- | 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. cbTargetOriginId :: Lens' CacheBehavior Text -- | A complex type that specifies how CloudFront handles query strings and -- cookies. cbForwardedValues :: Lens' CacheBehavior ForwardedValues -- | A complex type that specifies the AWS accounts, if any, that you want -- to allow to create signed URLs for private content. If you want to -- require signed URLs in requests for objects in the target origin that -- match the PathPattern for this cache behavior, specify -- true for Enabled , and specify the applicable values -- for Quantity and Items . For more information, see -- Serving Private Content through CloudFront in the Amazon -- Amazon CloudFront Developer Guide . If you don't want to require -- signed URLs in requests for objects that match PathPattern , -- specify false for Enabled and 0 for -- Quantity . Omit Items . To add, change, or remove -- one or more trusted signers, change Enabled to true -- (if it's currently false ), change Quantity as -- applicable, and specify all of the trusted signers that you want to -- include in the updated distribution. cbTrustedSigners :: Lens' CacheBehavior TrustedSigners -- | The protocol that viewers can use to access the files in the origin -- specified by TargetOriginId when a request matches the path -- pattern in PathPattern . You can specify the following -- options: * allow-all : Viewers can use HTTP or HTTPS. * -- redirect-to-https : If a viewer submits an HTTP request, -- CloudFront returns an HTTP status code of 301 (Moved Permanently) to -- the viewer along with the HTTPS URL. The viewer then resubmits the -- request using the new URL. * https-only : If a viewer sends -- an HTTP request, CloudFront returns an HTTP status code of 403 -- (Forbidden). For more information about requiring the HTTPS protocol, -- see Using an HTTPS Connection to Access Your Objects in the -- Amazon CloudFront Developer Guide . cbViewerProtocolPolicy :: Lens' CacheBehavior ViewerProtocolPolicy -- | The minimum amount of time that you want objects to stay in CloudFront -- caches before CloudFront forwards another request to your origin to -- determine whether the object has been updated. For more information, -- see Specifying How Long Objects and Errors Stay in a CloudFront -- Edge Cache (Expiration) in the Amazon Amazon CloudFront -- Developer Guide . You must specify 0 for MinTTL -- if you configure CloudFront to forward all headers to your origin -- (under Headers , if you specify 1 for -- Quantity and * for Name ). cbMinTTL :: Lens' CacheBehavior Integer -- | A complex type that contains zero or more CacheBehavior -- elements. -- -- See: cacheBehaviors smart constructor. data CacheBehaviors -- | Creates a value of CacheBehaviors with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- cacheBehaviors :: Int -> CacheBehaviors -- | Optional: A complex type that contains cache behaviors for this -- distribution. If Quantity is 0 , you can omit -- Items . cbItems :: Lens' CacheBehaviors [CacheBehavior] -- | The number of cache behaviors for this distribution. cbQuantity :: Lens' CacheBehaviors Int -- | A complex type that controls whether CloudFront caches the response to -- requests using the specified HTTP methods. There are two choices: -- -- -- -- If you pick the second choice for your Amazon S3 Origin, you may need -- to forward Access-Control-Request-Method, -- Access-Control-Request-Headers, and Origin headers for the responses -- to be cached correctly. -- -- See: cachedMethods smart constructor. data CachedMethods -- | Creates a value of CachedMethods with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- cachedMethods :: Int -> CachedMethods -- | 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). cmQuantity :: Lens' CachedMethods Int -- | A complex type that contains the HTTP methods that you want CloudFront -- to cache responses to. cmItems :: Lens' CachedMethods [Method] -- | CloudFront origin access identity. -- -- See: cloudFrontOriginAccessIdentity smart constructor. data CloudFrontOriginAccessIdentity -- | Creates a value of CloudFrontOriginAccessIdentity with the -- minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- cloudFrontOriginAccessIdentity :: Text -> Text -> CloudFrontOriginAccessIdentity -- | The current configuration information for the identity. cfoaiCloudFrontOriginAccessIdentityConfig :: Lens' CloudFrontOriginAccessIdentity (Maybe CloudFrontOriginAccessIdentityConfig) -- | The ID for the origin access identity, for example, -- E74FTE3AJFJ256A . cfoaiId :: Lens' CloudFrontOriginAccessIdentity Text -- | The Amazon S3 canonical user ID for the origin access identity, used -- when giving the origin access identity read permission to an object in -- Amazon S3. cfoaiS3CanonicalUserId :: Lens' CloudFrontOriginAccessIdentity Text -- | Origin access identity configuration. Send a GET request to -- the /CloudFront API version CloudFrontidentity -- ID/config resource. -- -- See: cloudFrontOriginAccessIdentityConfig smart -- constructor. data CloudFrontOriginAccessIdentityConfig -- | Creates a value of CloudFrontOriginAccessIdentityConfig with -- the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- cloudFrontOriginAccessIdentityConfig :: Text -> Text -> CloudFrontOriginAccessIdentityConfig -- | A unique number that ensures the request can't be replayed. If the -- CallerReference is new (no matter the content of the -- CloudFrontOriginAccessIdentityConfig object), a new origin -- access identity is created. If the CallerReference is a value -- already sent in a previous identity request, and the content of the -- CloudFrontOriginAccessIdentityConfig is identical to the -- original request (ignoring white space), the response includes the -- same information returned to the original request. If the -- CallerReference is a value you already sent in a previous -- request to create an identity, but the content of the -- CloudFrontOriginAccessIdentityConfig is different from the -- original request, CloudFront returns a -- CloudFrontOriginAccessIdentityAlreadyExists error. cfoaicCallerReference :: Lens' CloudFrontOriginAccessIdentityConfig Text -- | Any comments you want to include about the origin access identity. cfoaicComment :: Lens' CloudFrontOriginAccessIdentityConfig Text -- | Lists the origin access identities for CloudFront.Send a GET -- request to the /CloudFront API version -- origin-access-identitycloudfront resource. The response -- includes a CloudFrontOriginAccessIdentityList element with -- zero or more CloudFrontOriginAccessIdentitySummary child -- elements. By default, your entire list of origin access identities is -- returned in one single page. If the list is long, you can paginate it -- using the MaxItems and Marker parameters. -- -- See: cloudFrontOriginAccessIdentityList smart -- constructor. data CloudFrontOriginAccessIdentityList -- | Creates a value of CloudFrontOriginAccessIdentityList with the -- minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- cloudFrontOriginAccessIdentityList :: Text -> Int -> Bool -> Int -> CloudFrontOriginAccessIdentityList -- | A complex type that contains one -- CloudFrontOriginAccessIdentitySummary element for each origin -- access identity that was created by the current AWS account. cfoailItems :: Lens' CloudFrontOriginAccessIdentityList [CloudFrontOriginAccessIdentitySummary] -- | 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. cfoailNextMarker :: Lens' CloudFrontOriginAccessIdentityList (Maybe Text) -- | 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). cfoailMarker :: Lens' CloudFrontOriginAccessIdentityList Text -- | The maximum number of origin access identities you want in the -- response body. cfoailMaxItems :: Lens' CloudFrontOriginAccessIdentityList Int -- | 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. cfoailIsTruncated :: Lens' CloudFrontOriginAccessIdentityList Bool -- | The number of CloudFront origin access identities that were created by -- the current AWS account. cfoailQuantity :: Lens' CloudFrontOriginAccessIdentityList Int -- | Summary of the information about a CloudFront origin access identity. -- -- See: cloudFrontOriginAccessIdentitySummary smart -- constructor. data CloudFrontOriginAccessIdentitySummary -- | Creates a value of CloudFrontOriginAccessIdentitySummary with -- the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- cloudFrontOriginAccessIdentitySummary :: Text -> Text -> Text -> CloudFrontOriginAccessIdentitySummary -- | The ID for the origin access identity. For example: -- E74FTE3AJFJ256A . cfoaisId :: Lens' CloudFrontOriginAccessIdentitySummary Text -- | 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. cfoaisS3CanonicalUserId :: Lens' CloudFrontOriginAccessIdentitySummary Text -- | The comment for this origin access identity, as originally specified -- when created. cfoaisComment :: Lens' CloudFrontOriginAccessIdentitySummary Text -- | A field-level encryption content type profile. -- -- See: contentTypeProfile smart constructor. data ContentTypeProfile -- | Creates a value of ContentTypeProfile with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- contentTypeProfile :: Format -> Text -> ContentTypeProfile -- | The profile ID for a field-level encryption content type-profile -- mapping. ctpProfileId :: Lens' ContentTypeProfile (Maybe Text) -- | The format for a field-level encryption content type-profile mapping. ctpFormat :: Lens' ContentTypeProfile Format -- | The content type for a field-level encryption content type-profile -- mapping. ctpContentType :: Lens' ContentTypeProfile Text -- | The configuration for a field-level encryption content type-profile -- mapping. -- -- See: contentTypeProfileConfig smart constructor. data ContentTypeProfileConfig -- | Creates a value of ContentTypeProfileConfig with the minimum -- fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- contentTypeProfileConfig :: Bool -> ContentTypeProfileConfig -- | The configuration for a field-level encryption content type-profile. ctpcContentTypeProfiles :: Lens' ContentTypeProfileConfig (Maybe ContentTypeProfiles) -- | The setting in a field-level encryption content type-profile mapping -- that specifies what to do when an unknown content type is provided for -- the profile. If true, content is forwarded without being encrypted -- when the content type is unknown. If false (the default), an error is -- returned when the content type is unknown. ctpcForwardWhenContentTypeIsUnknown :: Lens' ContentTypeProfileConfig Bool -- | Field-level encryption content type-profile. -- -- See: contentTypeProfiles smart constructor. data ContentTypeProfiles -- | Creates a value of ContentTypeProfiles with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- contentTypeProfiles :: Int -> ContentTypeProfiles -- | Items in a field-level encryption content type-profile mapping. ctpItems :: Lens' ContentTypeProfiles [ContentTypeProfile] -- | The number of field-level encryption content type-profile mappings. ctpQuantity :: Lens' ContentTypeProfiles Int -- | A complex type that specifies whether you want CloudFront to forward -- cookies to the origin and, if so, which ones. For more information -- about forwarding cookies to the origin, see How CloudFront -- Forwards, Caches, and Logs Cookies in the Amazon CloudFront -- Developer Guide . -- -- See: cookieNames smart constructor. data CookieNames -- | Creates a value of CookieNames with the minimum fields required -- to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- cookieNames :: Int -> CookieNames -- | A complex type that contains one Name element for each cookie -- that you want CloudFront to forward to the origin for this cache -- behavior. cnItems :: Lens' CookieNames [Text] -- | The number of different cookies that you want CloudFront to forward to -- the origin for this cache behavior. cnQuantity :: Lens' CookieNames Int -- | A complex type that specifies whether you want CloudFront to forward -- cookies to the origin and, if so, which ones. For more information -- about forwarding cookies to the origin, see How CloudFront -- Forwards, Caches, and Logs Cookies in the Amazon CloudFront -- Developer Guide . -- -- See: cookiePreference smart constructor. data CookiePreference -- | Creates a value of CookiePreference with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- cookiePreference :: ItemSelection -> CookiePreference -- | Required if you specify whitelist for the value of -- Forward: . A complex type that specifies how many different -- cookies you want CloudFront to forward to the origin for this cache -- behavior and, if you want to forward selected cookies, the names of -- those cookies. If you specify all or none for the value of -- Forward , omit WhitelistedNames . If you change the -- value of Forward from whitelist to all or none and -- you don't delete the WhitelistedNames element and its child -- elements, CloudFront deletes them automatically. For the current limit -- on the number of cookie names that you can whitelist for each cache -- behavior, see Amazon CloudFront Limits in the AWS General -- Reference . cpWhitelistedNames :: Lens' CookiePreference (Maybe CookieNames) -- | Specifies which cookies to forward to the origin for this cache -- behavior: all, none, or the list of cookies specified in the -- WhitelistedNames complex type. Amazon S3 doesn't process -- cookies. When the cache behavior is forwarding requests to an Amazon -- S3 origin, specify none for the Forward element. cpForward :: Lens' CookiePreference ItemSelection -- | A complex type that controls: -- -- -- -- For more information about custom error pages, see Customizing -- Error Responses in the Amazon CloudFront Developer Guide . -- -- See: customErrorResponse smart constructor. data CustomErrorResponse -- | Creates a value of CustomErrorResponse with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- customErrorResponse :: Int -> CustomErrorResponse -- | The path to the custom error page that you want CloudFront to return -- to a viewer when your origin returns the HTTP status code specified by -- ErrorCode , for example, -- 4xx-errors403-forbidden.html . If you want to store -- your objects and your custom error pages in different locations, your -- distribution must include a cache behavior for which the following is -- true: * The value of PathPattern matches the path to your -- custom error messages. For example, suppose you saved custom error -- pages for 4xx errors in an Amazon S3 bucket in a directory named -- /4xx-errors . Your distribution must include a cache behavior -- for which the path pattern routes requests for your custom error pages -- to that location, for example, 4xx-errors* . * The -- value of TargetOriginId specifies the value of the -- ID element for the origin that contains your custom error -- pages. If you specify a value for ResponsePagePath , you must -- also specify a value for ResponseCode . If you don't want to -- specify a value, include an empty element, -- ResponsePagePath , in the XML document. We recommend -- that you store custom error pages in an Amazon S3 bucket. If you store -- custom error pages on an HTTP server and the server starts to return -- 5xx errors, CloudFront can't get the files that you want to return to -- viewers because the origin server is unavailable. ceResponsePagePath :: Lens' CustomErrorResponse (Maybe Text) -- | The HTTP status code that you want CloudFront to return to the viewer -- along with the custom error page. There are a variety of reasons that -- you might want CloudFront to return a status code different from the -- status code that your origin returned to CloudFront, for example: * -- Some Internet devices (some firewalls and corporate proxies, for -- example) intercept HTTP 4xx and 5xx and prevent the response from -- being returned to the viewer. If you substitute 200 , the -- response typically won't be intercepted. * If you don't care about -- distinguishing among different client errors or server errors, you can -- specify 400 or 500 as the ResponseCode for -- all 4xx or 5xx errors. * You might want to return a 200 -- status code (OK) and static website so your customers don't know that -- your website is down. If you specify a value for ResponseCode -- , you must also specify a value for ResponsePagePath . If you -- don't want to specify a value, include an empty element, -- ResponseCode , in the XML document. ceResponseCode :: Lens' CustomErrorResponse (Maybe Text) -- | The minimum amount of time, in seconds, that you want CloudFront to -- cache the HTTP status code specified in ErrorCode . When this -- time period has elapsed, CloudFront queries your origin to see whether -- the problem that caused the error has been resolved and the requested -- object is now available. If you don't want to specify a value, include -- an empty element, ErrorCachingMinTTL , in the XML -- document. For more information, see Customizing Error Responses -- in the Amazon CloudFront Developer Guide . ceErrorCachingMinTTL :: Lens' CustomErrorResponse (Maybe Integer) -- | The HTTP status code for which you want to specify a custom error page -- and/or a caching duration. ceErrorCode :: Lens' CustomErrorResponse Int -- | A complex type that controls: -- -- -- -- For more information about custom error pages, see Customizing -- Error Responses in the Amazon CloudFront Developer Guide . -- -- See: customErrorResponses smart constructor. data CustomErrorResponses -- | Creates a value of CustomErrorResponses with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- customErrorResponses :: Int -> CustomErrorResponses -- | A complex type that contains a CustomErrorResponse element -- for each HTTP status code for which you want to specify a custom error -- page and/or a caching duration. cerItems :: Lens' CustomErrorResponses [CustomErrorResponse] -- | The number of HTTP status codes for which you want to specify a custom -- error page and/or a caching duration. If Quantity is -- 0 , you can omit Items . cerQuantity :: Lens' CustomErrorResponses Int -- | A complex type that contains the list of Custom Headers for each -- origin. -- -- See: customHeaders smart constructor. data CustomHeaders -- | Creates a value of CustomHeaders with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- customHeaders :: Int -> CustomHeaders -- | Optional : A list that contains one OriginCustomHeader -- element for each custom header that you want CloudFront to forward to -- the origin. If Quantity is 0 , omit Items . chItems :: Lens' CustomHeaders [OriginCustomHeader] -- | The number of custom headers, if any, for this distribution. chQuantity :: Lens' CustomHeaders Int -- | A customer origin. -- -- See: customOriginConfig smart constructor. data CustomOriginConfig -- | Creates a value of CustomOriginConfig with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- customOriginConfig :: Int -> Int -> OriginProtocolPolicy -> CustomOriginConfig -- | You can create a custom keep-alive timeout. All timeout units are in -- seconds. The default keep-alive timeout is 5 seconds, but you can -- configure custom timeout lengths using the CloudFront API. The minimum -- timeout length is 1 second; the maximum is 60 seconds. If you need to -- increase the maximum time limit, contact the AWS Support Center -- . cocOriginKeepaliveTimeout :: Lens' CustomOriginConfig (Maybe Int) -- | You can create a custom origin read timeout. All timeout units are in -- seconds. The default origin read timeout is 30 seconds, but you can -- configure custom timeout lengths using the CloudFront API. The minimum -- timeout length is 4 seconds; the maximum is 60 seconds. If you need to -- increase the maximum time limit, contact the AWS Support Center -- . cocOriginReadTimeout :: Lens' CustomOriginConfig (Maybe Int) -- | The SSL/TLS protocols that you want CloudFront to use when -- communicating with your origin over HTTPS. cocOriginSSLProtocols :: Lens' CustomOriginConfig (Maybe OriginSSLProtocols) -- | The HTTP port the custom origin listens on. cocHTTPPort :: Lens' CustomOriginConfig Int -- | The HTTPS port the custom origin listens on. cocHTTPSPort :: Lens' CustomOriginConfig Int -- | The origin protocol policy to apply to your origin. cocOriginProtocolPolicy :: Lens' CustomOriginConfig OriginProtocolPolicy -- | A complex type that describes the default cache behavior if you don't -- specify a CacheBehavior element or if files don't match any -- of the values of PathPattern in CacheBehavior -- elements. You must create exactly one default cache behavior. -- -- See: defaultCacheBehavior smart constructor. data DefaultCacheBehavior -- | Creates a value of DefaultCacheBehavior with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- defaultCacheBehavior :: Text -> ForwardedValues -> TrustedSigners -> ViewerProtocolPolicy -> Integer -> DefaultCacheBehavior -- | Undocumented member. dcbAllowedMethods :: Lens' DefaultCacheBehavior (Maybe AllowedMethods) -- | A complex type that contains zero or more Lambda function associations -- for a cache behavior. dcbLambdaFunctionAssociations :: Lens' DefaultCacheBehavior (Maybe LambdaFunctionAssociations) -- | Undocumented member. dcbMaxTTL :: Lens' DefaultCacheBehavior (Maybe Integer) -- | Whether you want CloudFront to automatically compress certain files -- for this cache behavior. If so, specify true ; if not, -- specify false . For more information, see Serving -- Compressed Files in the Amazon CloudFront Developer Guide . dcbCompress :: Lens' DefaultCacheBehavior (Maybe Bool) -- | Indicates whether you want to distribute media files in the Microsoft -- Smooth Streaming format using the origin that is associated with this -- cache behavior. If so, specify true ; if not, specify -- false . If you specify true for -- SmoothStreaming , you can still distribute other content -- using this cache behavior if the content matches the value of -- PathPattern . dcbSmoothStreaming :: Lens' DefaultCacheBehavior (Maybe Bool) -- | The default amount of time that you want objects to stay in CloudFront -- caches before CloudFront forwards another request to your origin to -- determine whether the object has been updated. The value that you -- specify applies only when your origin does not add HTTP headers such -- as Cache-Control max-age , Cache-Control s-maxage , -- and Expires to objects. For more information, see -- Specifying How Long Objects and Errors Stay in a CloudFront Edge -- Cache (Expiration) in the Amazon CloudFront Developer Guide -- . dcbDefaultTTL :: Lens' DefaultCacheBehavior (Maybe Integer) -- | Undocumented member. dcbFieldLevelEncryptionId :: Lens' DefaultCacheBehavior (Maybe Text) -- | 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. dcbTargetOriginId :: Lens' DefaultCacheBehavior Text -- | A complex type that specifies how CloudFront handles query strings and -- cookies. dcbForwardedValues :: Lens' DefaultCacheBehavior ForwardedValues -- | A complex type that specifies the AWS accounts, if any, that you want -- to allow to create signed URLs for private content. If you want to -- require signed URLs in requests for objects in the target origin that -- match the PathPattern for this cache behavior, specify -- true for Enabled , and specify the applicable values -- for Quantity and Items . For more information, see -- Serving Private Content through CloudFront in the Amazon -- Amazon CloudFront Developer Guide . If you don't want to require -- signed URLs in requests for objects that match PathPattern , -- specify false for Enabled and 0 for -- Quantity . Omit Items . To add, change, or remove -- one or more trusted signers, change Enabled to true -- (if it's currently false ), change Quantity as -- applicable, and specify all of the trusted signers that you want to -- include in the updated distribution. dcbTrustedSigners :: Lens' DefaultCacheBehavior TrustedSigners -- | The protocol that viewers can use to access the files in the origin -- specified by TargetOriginId when a request matches the path -- pattern in PathPattern . You can specify the following -- options: * allow-all : Viewers can use HTTP or HTTPS. * -- redirect-to-https : If a viewer submits an HTTP request, -- CloudFront returns an HTTP status code of 301 (Moved Permanently) to -- the viewer along with the HTTPS URL. The viewer then resubmits the -- request using the new URL. * https-only : If a viewer sends -- an HTTP request, CloudFront returns an HTTP status code of 403 -- (Forbidden). For more information about requiring the HTTPS protocol, -- see Using an HTTPS Connection to Access Your Objects in the -- Amazon CloudFront Developer Guide . dcbViewerProtocolPolicy :: Lens' DefaultCacheBehavior ViewerProtocolPolicy -- | The minimum amount of time that you want objects to stay in CloudFront -- caches before CloudFront forwards another request to your origin to -- determine whether the object has been updated. For more information, -- see Specifying How Long Objects and Errors Stay in a CloudFront -- Edge Cache (Expiration) in the Amazon Amazon CloudFront -- Developer Guide . You must specify 0 for MinTTL -- if you configure CloudFront to forward all headers to your origin -- (under Headers , if you specify 1 for -- Quantity and * for Name ). dcbMinTTL :: Lens' DefaultCacheBehavior Integer -- | The distribution's information. -- -- See: distribution smart constructor. data Distribution -- | Creates a value of Distribution with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- distribution :: Text -> Text -> Text -> UTCTime -> Int -> Text -> ActiveTrustedSigners -> DistributionConfig -> Distribution -- | The identifier for the distribution. For example: -- EDFDVBD632BHDS5 . dId :: Lens' Distribution Text -- | The ARN (Amazon Resource Name) for the distribution. For example: -- arn:aws:cloudfront::123456789012:distribution/EDFDVBD632BHDS5 -- , where 123456789012 is your AWS account ID. dARN :: Lens' Distribution Text -- | This response element indicates the current status of the -- distribution. When the status is Deployed , the -- distribution's information is fully propagated to all CloudFront edge -- locations. dStatus :: Lens' Distribution Text -- | The date and time the distribution was last modified. dLastModifiedTime :: Lens' Distribution UTCTime -- | The number of invalidation batches currently in progress. dInProgressInvalidationBatches :: Lens' Distribution Int -- | The domain name corresponding to the distribution, for example, -- d111111abcdef8.cloudfront.net . dDomainName :: Lens' Distribution Text -- | 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. dActiveTrustedSigners :: Lens' Distribution ActiveTrustedSigners -- | The current configuration information for the distribution. Send a -- GET request to the /CloudFront API version -- distribution IDconfig resource. dDistributionConfig :: Lens' Distribution DistributionConfig -- | A distribution configuration. -- -- See: distributionConfig smart constructor. data DistributionConfig -- | Creates a value of DistributionConfig with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- distributionConfig :: Text -> Origins -> DefaultCacheBehavior -> Text -> Bool -> DistributionConfig -- | (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 HTTP2 -- automatically use an earlier HTTP version. For viewers and CloudFront -- to use HTTP2, viewers must support TLS 1.2 or later, and must -- support Server Name Identification (SNI). In general, configuring -- CloudFront to communicate with viewers using HTTP2 reduces latency. -- You can improve performance by optimizing for HTTP2. For more -- information, do an Internet search for "http/2 optimization." dcHTTPVersion :: Lens' DistributionConfig (Maybe HTTPVersion) -- | A complex type that contains information about CNAMEs (alternate -- domain names), if any, for this distribution. dcAliases :: Lens' DistributionConfig (Maybe Aliases) -- | The object that you want CloudFront to request from your origin (for -- example, index.html ) when a viewer requests the root URL for -- your distribution (http://www.example.com ) instead of -- an object in your distribution -- (http://www.example.com/product-description.html ). -- Specifying a default root object avoids exposing the contents of your -- distribution. Specify only the object name, for example, -- index.html . Don't add a / before the object name. -- If you don't want to specify a default root object when you create a -- distribution, include an empty DefaultRootObject element. To -- delete the default root object from an existing distribution, update -- the distribution configuration and include an empty -- DefaultRootObject element. To replace the default root -- object, update the distribution configuration and specify the new -- object. For more information about the default root object, see -- Creating a Default Root Object in the Amazon CloudFront -- Developer Guide . dcDefaultRootObject :: Lens' DistributionConfig (Maybe Text) -- | The price class that corresponds with the maximum price that you want -- to pay for CloudFront service. If you specify PriceClass_All -- , CloudFront responds to requests for your objects from all CloudFront -- edge locations. If you specify a price class other than -- PriceClass_All , CloudFront serves your objects from the -- CloudFront edge location that has the lowest latency among the edge -- locations in your price class. Viewers who are in or near regions that -- are excluded from your specified price class may encounter slower -- performance. For more information about price classes, see Choosing -- the Price Class for a CloudFront Distribution in the Amazon -- CloudFront Developer Guide . For information about CloudFront -- pricing, including how price classes map to CloudFront regions, see -- Amazon CloudFront Pricing . dcPriceClass :: Lens' DistributionConfig (Maybe PriceClass) -- | A complex type that controls the following: * Whether CloudFront -- replaces HTTP status codes in the 4xx and 5xx range with custom error -- messages before returning the response to the viewer. * How long -- CloudFront caches HTTP status codes in the 4xx and 5xx range. For more -- information about custom error pages, see Customizing Error -- Responses in the Amazon CloudFront Developer Guide . dcCustomErrorResponses :: Lens' DistributionConfig (Maybe CustomErrorResponses) -- | A unique identifier that specifies the AWS WAF web ACL, if any, to -- associate with this distribution. AWS WAF is a web application -- firewall that lets you monitor the HTTP and HTTPS requests that are -- forwarded to CloudFront, and lets you control access to your content. -- Based on conditions that you specify, such as the IP addresses that -- requests originate from or the values of query strings, CloudFront -- responds to requests either with the requested content or with an HTTP -- 403 status code (Forbidden). You can also configure CloudFront to -- return a custom error page when a request is blocked. For more -- information about AWS WAF, see the AWS WAF Developer Guide . dcWebACLId :: Lens' DistributionConfig (Maybe Text) -- | Undocumented member. dcViewerCertificate :: Lens' DistributionConfig (Maybe ViewerCertificate) -- | Undocumented member. dcRestrictions :: Lens' DistributionConfig (Maybe Restrictions) -- | A complex type that controls whether access logs are written for the -- distribution. For more information about logging, see Access -- Logs in the Amazon CloudFront Developer Guide . dcLogging :: Lens' DistributionConfig (Maybe LoggingConfig) -- | A complex type that contains zero or more CacheBehavior -- elements. dcCacheBehaviors :: Lens' DistributionConfig (Maybe CacheBehaviors) -- | If you want CloudFront to respond to IPv6 DNS requests with an IPv6 -- address for your distribution, specify true . If you specify -- false , CloudFront responds to IPv6 DNS requests with the DNS -- response code NOERROR and with no IP addresses. This allows -- viewers to submit a second request, for an IPv4 address for your -- distribution. In general, you should enable IPv6 if you have users on -- IPv6 networks who want to access your content. However, if you're -- using signed URLs or signed cookies to restrict access to your -- content, and if you're using a custom policy that includes the -- IpAddress parameter to restrict the IP addresses that can -- access your content, don't enable IPv6. If you want to restrict access -- to some content by IP address and not restrict access to other content -- (or restrict access but not by IP address), you can create two -- distributions. For more information, see Creating a Signed URL -- Using a Custom Policy in the Amazon CloudFront Developer -- Guide . If you're using an Amazon Route 53 alias resource record -- set to route traffic to your CloudFront distribution, you need to -- create a second alias resource record set when both of the following -- are true: * You enable IPv6 for the distribution * You're using -- alternate domain names in the URLs for your objects For more -- information, see Routing Traffic to an Amazon CloudFront Web -- Distribution by Using Your Domain Name in the Amazon Route 53 -- Developer Guide . If you created a CNAME resource record set, -- either with Amazon Route 53 or with another DNS service, you don't -- need to make any changes. A CNAME record will route traffic to your -- distribution regardless of the IP address format of the viewer -- request. dcIsIPV6Enabled :: Lens' DistributionConfig (Maybe Bool) -- | A unique value (for example, a date-time stamp) that ensures that the -- request can't be replayed. If the value of CallerReference is -- new (regardless of the content of the DistributionConfig -- object), CloudFront creates a new distribution. If -- CallerReference is a value you already sent in a previous -- request to create a distribution, and if the content of the -- DistributionConfig is identical to the original request -- (ignoring white space), CloudFront returns the same the response that -- it returned to the original request. If CallerReference is a -- value you already sent in a previous request to create a distribution -- but the content of the DistributionConfig is different from -- the original request, CloudFront returns a -- DistributionAlreadyExists error. dcCallerReference :: Lens' DistributionConfig Text -- | A complex type that contains information about origins for this -- distribution. dcOrigins :: Lens' DistributionConfig Origins -- | A complex type that describes the default cache behavior if you don't -- specify a CacheBehavior element or if files don't match any -- of the values of PathPattern in CacheBehavior -- elements. You must create exactly one default cache behavior. dcDefaultCacheBehavior :: Lens' DistributionConfig DefaultCacheBehavior -- | Any comments you want to include about the distribution. If you don't -- want to specify a comment, include an empty Comment element. -- To delete an existing comment, update the distribution configuration -- and include an empty Comment element. To add or change a -- comment, update the distribution configuration and specify the new -- comment. dcComment :: Lens' DistributionConfig Text -- | From this field, you can enable or disable the selected distribution. -- If you specify false for Enabled but you specify -- values for Bucket and Prefix , the values are -- automatically deleted. dcEnabled :: Lens' DistributionConfig Bool -- | A distribution Configuration and a list of tags to be associated with -- the distribution. -- -- See: distributionConfigWithTags smart constructor. data DistributionConfigWithTags -- | Creates a value of DistributionConfigWithTags with the minimum -- fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- distributionConfigWithTags :: DistributionConfig -> Tags -> DistributionConfigWithTags -- | A distribution configuration. dcwtDistributionConfig :: Lens' DistributionConfigWithTags DistributionConfig -- | A complex type that contains zero or more Tag elements. dcwtTags :: Lens' DistributionConfigWithTags Tags -- | A distribution list. -- -- See: distributionList smart constructor. data DistributionList -- | Creates a value of DistributionList with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- distributionList :: Text -> Int -> Bool -> Int -> DistributionList -- | A complex type that contains one DistributionSummary element -- for each distribution that was created by the current AWS account. dlItems :: Lens' DistributionList [DistributionSummary] -- | 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. dlNextMarker :: Lens' DistributionList (Maybe Text) -- | The value you provided for the Marker request parameter. dlMarker :: Lens' DistributionList Text -- | The value you provided for the MaxItems request parameter. dlMaxItems :: Lens' DistributionList Int -- | 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. dlIsTruncated :: Lens' DistributionList Bool -- | The number of distributions that were created by the current AWS -- account. dlQuantity :: Lens' DistributionList Int -- | A summary of the information about a CloudFront distribution. -- -- See: distributionSummary smart constructor. data DistributionSummary -- | Creates a value of DistributionSummary with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- distributionSummary :: Text -> Text -> Text -> UTCTime -> Text -> Aliases -> Origins -> DefaultCacheBehavior -> CacheBehaviors -> CustomErrorResponses -> Text -> PriceClass -> Bool -> ViewerCertificate -> Restrictions -> Text -> HTTPVersion -> Bool -> DistributionSummary -- | The identifier for the distribution. For example: -- EDFDVBD632BHDS5 . dsId :: Lens' DistributionSummary Text -- | The ARN (Amazon Resource Name) for the distribution. For example: -- arn:aws:cloudfront::123456789012:distribution/EDFDVBD632BHDS5 -- , where 123456789012 is your AWS account ID. dsARN :: Lens' DistributionSummary Text -- | The current status of the distribution. When the status is -- Deployed , the distribution's information is propagated to -- all CloudFront edge locations. dsStatus :: Lens' DistributionSummary Text -- | The date and time the distribution was last modified. dsLastModifiedTime :: Lens' DistributionSummary UTCTime -- | The domain name that corresponds to the distribution, for example, -- d111111abcdef8.cloudfront.net . dsDomainName :: Lens' DistributionSummary Text -- | A complex type that contains information about CNAMEs (alternate -- domain names), if any, for this distribution. dsAliases :: Lens' DistributionSummary Aliases -- | A complex type that contains information about origins for this -- distribution. dsOrigins :: Lens' DistributionSummary Origins -- | A complex type that describes the default cache behavior if you don't -- specify a CacheBehavior element or if files don't match any -- of the values of PathPattern in CacheBehavior -- elements. You must create exactly one default cache behavior. dsDefaultCacheBehavior :: Lens' DistributionSummary DefaultCacheBehavior -- | A complex type that contains zero or more CacheBehavior -- elements. dsCacheBehaviors :: Lens' DistributionSummary CacheBehaviors -- | A complex type that contains zero or more -- CustomErrorResponses elements. dsCustomErrorResponses :: Lens' DistributionSummary CustomErrorResponses -- | The comment originally specified when this distribution was created. dsComment :: Lens' DistributionSummary Text -- | Undocumented member. dsPriceClass :: Lens' DistributionSummary PriceClass -- | Whether the distribution is enabled to accept user requests for -- content. dsEnabled :: Lens' DistributionSummary Bool -- | Undocumented member. dsViewerCertificate :: Lens' DistributionSummary ViewerCertificate -- | Undocumented member. dsRestrictions :: Lens' DistributionSummary Restrictions -- | The Web ACL Id (if any) associated with the distribution. dsWebACLId :: Lens' DistributionSummary Text -- | 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. dsHTTPVersion :: Lens' DistributionSummary HTTPVersion -- | Whether CloudFront responds to IPv6 DNS requests with an IPv6 address -- for your distribution. dsIsIPV6Enabled :: Lens' DistributionSummary Bool -- | Complex data type for field-level encryption profiles that includes -- all of the encryption entities. -- -- See: encryptionEntities smart constructor. data EncryptionEntities -- | Creates a value of EncryptionEntities with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- encryptionEntities :: Int -> EncryptionEntities -- | An array of field patterns in a field-level encryption content -- type-profile mapping. eeItems :: Lens' EncryptionEntities [EncryptionEntity] -- | Number of field pattern items in a field-level encryption content -- type-profile mapping. eeQuantity :: Lens' EncryptionEntities Int -- | Complex data type for field-level encryption profiles that includes -- the encryption key and field pattern specifications. -- -- See: encryptionEntity smart constructor. data EncryptionEntity -- | Creates a value of EncryptionEntity with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- encryptionEntity :: Text -> Text -> FieldPatterns -> EncryptionEntity -- | The public key associated with a set of field-level encryption -- patterns, to be used when encrypting the fields that match the -- patterns. eePublicKeyId :: Lens' EncryptionEntity Text -- | The provider associated with the public key being used for encryption. -- This value must also be provided with the private key for applications -- to be able to decrypt data. eeProviderId :: Lens' EncryptionEntity Text -- | Field patterns in a field-level encryption content type profile -- specify the fields that you want to be encrypted. You can provide the -- full field name, or any beginning characters followed by a wildcard -- (*). You can't overlap field patterns. For example, you can't have -- both ABC* and AB*. Note that field patterns are case-sensitive. eeFieldPatterns :: Lens' EncryptionEntity FieldPatterns -- | A complex data type that includes the profile configurations and other -- options specified for field-level encryption. -- -- See: fieldLevelEncryption smart constructor. data FieldLevelEncryption -- | Creates a value of FieldLevelEncryption with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- fieldLevelEncryption :: Text -> UTCTime -> FieldLevelEncryptionConfig -> FieldLevelEncryption -- | The configuration ID for a field-level encryption configuration which -- includes a set of profiles that specify certain selected data fields -- to be encrypted by specific public keys. fleId :: Lens' FieldLevelEncryption Text -- | The last time the field-level encryption configuration was changed. fleLastModifiedTime :: Lens' FieldLevelEncryption UTCTime -- | A complex data type that includes the profile configurations specified -- for field-level encryption. fleFieldLevelEncryptionConfig :: Lens' FieldLevelEncryption FieldLevelEncryptionConfig -- | A complex data type that includes the profile configurations specified -- for field-level encryption. -- -- See: fieldLevelEncryptionConfig smart constructor. data FieldLevelEncryptionConfig -- | Creates a value of FieldLevelEncryptionConfig with the minimum -- fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- fieldLevelEncryptionConfig :: Text -> FieldLevelEncryptionConfig -- | A complex data type that specifies when to forward content if a -- profile isn't found and the profile that can be provided as a query -- argument in a request. flecQueryArgProfileConfig :: Lens' FieldLevelEncryptionConfig (Maybe QueryArgProfileConfig) -- | A complex data type that specifies when to forward content if a -- content type isn't recognized and profiles to use as by default in a -- request if a query argument doesn't specify a profile to use. flecContentTypeProfileConfig :: Lens' FieldLevelEncryptionConfig (Maybe ContentTypeProfileConfig) -- | An optional comment about the configuration. flecComment :: Lens' FieldLevelEncryptionConfig (Maybe Text) -- | A unique number that ensures the request can't be replayed. flecCallerReference :: Lens' FieldLevelEncryptionConfig Text -- | List of field-level encrpytion configurations. -- -- See: fieldLevelEncryptionList smart constructor. data FieldLevelEncryptionList -- | Creates a value of FieldLevelEncryptionList with the minimum -- fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- fieldLevelEncryptionList :: Int -> Int -> FieldLevelEncryptionList -- | An array of field-level encryption items. flelItems :: Lens' FieldLevelEncryptionList [FieldLevelEncryptionSummary] -- | If there are more elements to be listed, this element is present and -- contains the value that you can use for the Marker request -- parameter to continue listing your configurations where you left off. flelNextMarker :: Lens' FieldLevelEncryptionList (Maybe Text) -- | The maximum number of elements you want in the response body. flelMaxItems :: Lens' FieldLevelEncryptionList Int -- | The number of field-level encryption items. flelQuantity :: Lens' FieldLevelEncryptionList Int -- | A complex data type for field-level encryption profiles. -- -- See: fieldLevelEncryptionProfile smart constructor. data FieldLevelEncryptionProfile -- | Creates a value of FieldLevelEncryptionProfile with the minimum -- fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- fieldLevelEncryptionProfile :: Text -> UTCTime -> FieldLevelEncryptionProfileConfig -> FieldLevelEncryptionProfile -- | The ID for a field-level encryption profile configuration which -- includes a set of profiles that specify certain selected data fields -- to be encrypted by specific public keys. flepId :: Lens' FieldLevelEncryptionProfile Text -- | The last time the field-level encryption profile was updated. flepLastModifiedTime :: Lens' FieldLevelEncryptionProfile UTCTime -- | A complex data type that includes the profile name and the encryption -- entities for the field-level encryption profile. flepFieldLevelEncryptionProfileConfig :: Lens' FieldLevelEncryptionProfile FieldLevelEncryptionProfileConfig -- | A complex data type of profiles for the field-level encryption. -- -- See: fieldLevelEncryptionProfileConfig smart -- constructor. data FieldLevelEncryptionProfileConfig -- | Creates a value of FieldLevelEncryptionProfileConfig with the -- minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- fieldLevelEncryptionProfileConfig :: Text -> Text -> EncryptionEntities -> FieldLevelEncryptionProfileConfig -- | An optional comment for the field-level encryption profile. flepcComment :: Lens' FieldLevelEncryptionProfileConfig (Maybe Text) -- | Profile name for the field-level encryption profile. flepcName :: Lens' FieldLevelEncryptionProfileConfig Text -- | A unique number that ensures the request can't be replayed. flepcCallerReference :: Lens' FieldLevelEncryptionProfileConfig Text -- | A complex data type of encryption entities for the field-level -- encryption profile that include the public key ID, provider, and field -- patterns for specifying which fields to encrypt with this key. flepcEncryptionEntities :: Lens' FieldLevelEncryptionProfileConfig EncryptionEntities -- | List of field-level encryption profiles. -- -- See: fieldLevelEncryptionProfileList smart constructor. data FieldLevelEncryptionProfileList -- | Creates a value of FieldLevelEncryptionProfileList with the -- minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- fieldLevelEncryptionProfileList :: Int -> Int -> FieldLevelEncryptionProfileList -- | The field-level encryption profile items. fleplItems :: Lens' FieldLevelEncryptionProfileList [FieldLevelEncryptionProfileSummary] -- | If there are more elements to be listed, this element is present and -- contains the value that you can use for the Marker request -- parameter to continue listing your profiles where you left off. fleplNextMarker :: Lens' FieldLevelEncryptionProfileList (Maybe Text) -- | The maximum number of field-level encryption profiles you want in the -- response body. fleplMaxItems :: Lens' FieldLevelEncryptionProfileList Int -- | The number of field-level encryption profiles. fleplQuantity :: Lens' FieldLevelEncryptionProfileList Int -- | The field-level encryption profile summary. -- -- See: fieldLevelEncryptionProfileSummary smart -- constructor. data FieldLevelEncryptionProfileSummary -- | Creates a value of FieldLevelEncryptionProfileSummary with the -- minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- fieldLevelEncryptionProfileSummary :: Text -> UTCTime -> Text -> EncryptionEntities -> FieldLevelEncryptionProfileSummary -- | An optional comment for the field-level encryption profile summary. flepsComment :: Lens' FieldLevelEncryptionProfileSummary (Maybe Text) -- | ID for the field-level encryption profile summary. flepsId :: Lens' FieldLevelEncryptionProfileSummary Text -- | The time when the the field-level encryption profile summary was last -- updated. flepsLastModifiedTime :: Lens' FieldLevelEncryptionProfileSummary UTCTime -- | Name for the field-level encryption profile summary. flepsName :: Lens' FieldLevelEncryptionProfileSummary Text -- | A complex data type of encryption entities for the field-level -- encryption profile that include the public key ID, provider, and field -- patterns for specifying which fields to encrypt with this key. flepsEncryptionEntities :: Lens' FieldLevelEncryptionProfileSummary EncryptionEntities -- | A summary of a field-level encryption item. -- -- See: fieldLevelEncryptionSummary smart constructor. data FieldLevelEncryptionSummary -- | Creates a value of FieldLevelEncryptionSummary with the minimum -- fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- fieldLevelEncryptionSummary :: Text -> UTCTime -> FieldLevelEncryptionSummary -- | A summary of a query argument-profile mapping. flesQueryArgProfileConfig :: Lens' FieldLevelEncryptionSummary (Maybe QueryArgProfileConfig) -- | A summary of a content type-profile mapping. flesContentTypeProfileConfig :: Lens' FieldLevelEncryptionSummary (Maybe ContentTypeProfileConfig) -- | An optional comment about the field-level encryption item. flesComment :: Lens' FieldLevelEncryptionSummary (Maybe Text) -- | The unique ID of a field-level encryption item. flesId :: Lens' FieldLevelEncryptionSummary Text -- | The last time that the summary of field-level encryption items was -- modified. flesLastModifiedTime :: Lens' FieldLevelEncryptionSummary UTCTime -- | A complex data type that includes the field patterns to match for -- field-level encryption. -- -- See: fieldPatterns smart constructor. data FieldPatterns -- | Creates a value of FieldPatterns with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- fieldPatterns :: Int -> FieldPatterns -- | An array of the field-level encryption field patterns. fpItems :: Lens' FieldPatterns [Text] -- | The number of field-level encryption field patterns. fpQuantity :: Lens' FieldPatterns Int -- | A complex type that specifies how CloudFront handles query strings and -- cookies. -- -- See: forwardedValues smart constructor. data ForwardedValues -- | Creates a value of ForwardedValues with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- forwardedValues :: Bool -> CookiePreference -> ForwardedValues -- | A complex type that contains information about the query string -- parameters that you want CloudFront to use for caching for this cache -- behavior. fvQueryStringCacheKeys :: Lens' ForwardedValues (Maybe QueryStringCacheKeys) -- | A complex type that specifies the Headers , if any, that you -- want CloudFront to base caching on for this cache behavior. fvHeaders :: Lens' ForwardedValues (Maybe Headers) -- | Indicates whether you want CloudFront to forward query strings to the -- origin that is associated with this cache behavior and cache based on -- the query string parameters. CloudFront behavior depends on the value -- of QueryString and on the values that you specify for -- QueryStringCacheKeys , if any: If you specify true for -- QueryString and you don't specify any values for -- QueryStringCacheKeys , CloudFront forwards all query string -- parameters to the origin and caches based on all query string -- parameters. Depending on how many query string parameters and values -- you have, this can adversely affect performance because CloudFront -- must forward more requests to the origin. If you specify true for -- QueryString and you specify one or more values for -- QueryStringCacheKeys , CloudFront forwards all query string -- parameters to the origin, but it only caches based on the query string -- parameters that you specify. If you specify false for -- QueryString , CloudFront doesn't forward any query string -- parameters to the origin, and doesn't cache based on query string -- parameters. For more information, see Configuring CloudFront to -- Cache Based on Query String Parameters in the Amazon CloudFront -- Developer Guide . fvQueryString :: Lens' ForwardedValues Bool -- | A complex type that specifies whether you want CloudFront to forward -- cookies to the origin and, if so, which ones. For more information -- about forwarding cookies to the origin, see How CloudFront -- Forwards, Caches, and Logs Cookies in the Amazon CloudFront -- Developer Guide . fvCookies :: Lens' ForwardedValues CookiePreference -- | A complex type that controls the countries in which your content is -- distributed. CloudFront determines the location of your users using -- MaxMind GeoIP databases. -- -- See: geoRestriction smart constructor. data GeoRestriction -- | Creates a value of GeoRestriction with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- geoRestriction :: GeoRestrictionType -> Int -> GeoRestriction -- | A complex type that contains a Location element for each -- country in which you want CloudFront either to distribute your content -- (whitelist ) or not distribute your content -- (blacklist ). The Location element is a two-letter, -- uppercase country code for a country that you want to include in your -- blacklist or whitelist . Include one -- Location element for each country. CloudFront and -- MaxMind both use ISO 3166 country codes. For the -- current list of countries and the corresponding codes, see ISO -- 3166-1-alpha-2 code on the International Organization for -- Standardization website. You can also refer to the country list on -- the CloudFront console, which includes both country names and codes. grItems :: Lens' GeoRestriction [Text] -- | The method that you want to use to restrict distribution of your -- content by country: * none : No geo restriction is enabled, -- meaning access to content is not restricted by client geo location. * -- blacklist : The Location elements specify the -- countries in which you don't want CloudFront to distribute your -- content. * whitelist : The Location elements specify -- the countries in which you want CloudFront to distribute your content. grRestrictionType :: Lens' GeoRestriction GeoRestrictionType -- | 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 . grQuantity :: Lens' GeoRestriction Int -- | A complex type that specifies the request headers, if any, that you -- want CloudFront to base caching on for this cache behavior. -- -- For the headers that you specify, CloudFront caches separate versions -- of a specified object based on the header values in viewer requests. -- For example, suppose viewer requests for logo.jpg contain a -- custom product header that has a value of either -- acme or apex , and you configure CloudFront to cache -- your content based on values in the product header. -- CloudFront forwards the product header to the origin and -- caches the response from the origin once for each header value. For -- more information about caching based on header values, see How -- CloudFront Forwards and Caches Headers in the Amazon CloudFront -- Developer Guide . -- -- See: headers smart constructor. data Headers -- | Creates a value of Headers with the minimum fields required to -- make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- headers :: Int -> Headers -- | A list that contains one Name element for each header that -- you want CloudFront to use for caching in this cache behavior. If -- Quantity is 0 , omit Items . hItems :: Lens' Headers [Text] -- | The number of different headers that you want CloudFront to base -- caching on for this cache behavior. You can configure each cache -- behavior in a web distribution to do one of the following: * -- Forward all headers to your origin : Specify 1 for -- Quantity and * for Name . Important: -- CloudFront doesn't cache the objects that are associated with this -- cache behavior. Instead, CloudFront sends every request to the origin. -- * Forward a whitelist of headers you specify : Specify the -- number of headers that you want CloudFront to base caching on. Then -- specify the header names in Name elements. CloudFront caches -- your objects based on the values in the specified headers. * -- Forward only the default headers : Specify 0 for -- Quantity and omit Items . In this configuration, -- CloudFront doesn't cache based on the values in the request headers. -- Regardless of which option you choose, CloudFront forwards headers to -- your origin based on whether the origin is an S3 bucket or a custom -- origin. See the following documentation: * S3 bucket : See -- HTTP Request Headers That CloudFront Removes or Updates * -- Custom origin : See HTTP Request Headers and CloudFront -- Behavior hQuantity :: Lens' Headers Int -- | An invalidation. -- -- See: invalidation smart constructor. data Invalidation -- | Creates a value of Invalidation with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- invalidation :: Text -> Text -> UTCTime -> InvalidationBatch -> Invalidation -- | The identifier for the invalidation request. For example: -- IDFDVBD632BHDS5 . iId :: Lens' Invalidation Text -- | The status of the invalidation request. When the invalidation batch is -- finished, the status is Completed . iStatus :: Lens' Invalidation Text -- | The date and time the invalidation request was first made. iCreateTime :: Lens' Invalidation UTCTime -- | The current invalidation information for the batch request. iInvalidationBatch :: Lens' Invalidation InvalidationBatch -- | An invalidation batch. -- -- See: invalidationBatch smart constructor. data InvalidationBatch -- | Creates a value of InvalidationBatch with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- invalidationBatch :: Paths -> Text -> InvalidationBatch -- | A complex type that contains information about the objects that you -- want to invalidate. For more information, see Specifying the -- Objects to Invalidate in the Amazon CloudFront Developer -- Guide . ibPaths :: Lens' InvalidationBatch Paths -- | A value that you specify to uniquely identify an invalidation request. -- CloudFront uses the value to prevent you from accidentally -- resubmitting an identical request. Whenever you create a new -- invalidation request, you must specify a new value for -- CallerReference and change other values in the request as -- applicable. One way to ensure that the value of -- CallerReference is unique is to use a timestamp , -- for example, 20120301090000 . If you make a second -- invalidation request with the same value for CallerReference -- , and if the rest of the request is the same, CloudFront doesn't -- create a new invalidation request. Instead, CloudFront returns -- information about the invalidation request that you previously created -- with the same CallerReference . If CallerReference -- is a value you already sent in a previous invalidation batch request -- but the content of any Path is different from the original -- request, CloudFront returns an InvalidationBatchAlreadyExists -- error. ibCallerReference :: Lens' InvalidationBatch Text -- | The InvalidationList complex type describes the list of -- invalidation objects. For more information about invalidation, see -- Invalidating Objects (Web Distributions Only) in the Amazon -- CloudFront Developer Guide . -- -- See: invalidationList smart constructor. data InvalidationList -- | Creates a value of InvalidationList with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- invalidationList :: Text -> Int -> Bool -> Int -> InvalidationList -- | A complex type that contains one InvalidationSummary element -- for each invalidation batch created by the current AWS account. ilItems :: Lens' InvalidationList [InvalidationSummary] -- | If IsTruncated is true , this element is present and -- contains the value that you can use for the Marker request -- parameter to continue listing your invalidation batches where they -- left off. ilNextMarker :: Lens' InvalidationList (Maybe Text) -- | The value that you provided for the Marker request parameter. ilMarker :: Lens' InvalidationList Text -- | The value that you provided for the MaxItems request -- parameter. ilMaxItems :: Lens' InvalidationList Int -- | 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. ilIsTruncated :: Lens' InvalidationList Bool -- | The number of invalidation batches that were created by the current -- AWS account. ilQuantity :: Lens' InvalidationList Int -- | A summary of an invalidation request. -- -- See: invalidationSummary smart constructor. data InvalidationSummary -- | Creates a value of InvalidationSummary with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- invalidationSummary :: Text -> UTCTime -> Text -> InvalidationSummary -- | The unique ID for an invalidation request. isId :: Lens' InvalidationSummary Text -- | Undocumented member. isCreateTime :: Lens' InvalidationSummary UTCTime -- | The status of an invalidation request. isStatus :: Lens' InvalidationSummary Text -- | A complex type that lists the active CloudFront key pairs, if any, -- that are associated with AwsAccountNumber . -- -- For more information, see ActiveTrustedSigners . -- -- See: keyPairIds smart constructor. data KeyPairIds -- | Creates a value of KeyPairIds with the minimum fields required -- to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- keyPairIds :: Int -> KeyPairIds -- | A complex type that lists the active CloudFront key pairs, if any, -- that are associated with AwsAccountNumber . For more -- information, see ActiveTrustedSigners . kpiItems :: Lens' KeyPairIds [Text] -- | The number of active CloudFront key pairs for -- AwsAccountNumber . For more information, see -- ActiveTrustedSigners . kpiQuantity :: Lens' KeyPairIds Int -- | A complex type that contains a Lambda function association. -- -- See: lambdaFunctionAssociation smart constructor. data LambdaFunctionAssociation -- | Creates a value of LambdaFunctionAssociation with the minimum -- fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- lambdaFunctionAssociation :: Text -> EventType -> LambdaFunctionAssociation -- | The ARN of the Lambda function. You must specify the ARN of a function -- version; you can't specify a Lambda alias or $LATEST. lfaLambdaFunctionARN :: Lens' LambdaFunctionAssociation Text -- | Specifies the event type that triggers a Lambda function invocation. -- You can specify the following values: * viewer-request : The -- function executes when CloudFront receives a request from a viewer and -- before it checks to see whether the requested object is in the edge -- cache. * origin-request : The function executes only when -- CloudFront forwards a request to your origin. When the requested -- object is in the edge cache, the function doesn't execute. * -- origin-response : The function executes after CloudFront -- receives a response from the origin and before it caches the object in -- the response. When the requested object is in the edge cache, the -- function doesn't execute. If the origin returns an HTTP status code -- other than HTTP 200 (OK), the function doesn't execute. * -- viewer-response : The function executes before CloudFront -- returns the requested object to the viewer. The function executes -- regardless of whether the object was already in the edge cache. If the -- origin returns an HTTP status code other than HTTP 200 (OK), the -- function doesn't execute. lfaEventType :: Lens' LambdaFunctionAssociation EventType -- | A complex type that specifies a list of Lambda functions associations -- for a cache behavior. -- -- If you want to invoke one or more Lambda functions triggered by -- requests that match the PathPattern of the cache behavior, -- specify the applicable values for Quantity and Items -- . Note that there can be up to 4 LambdaFunctionAssociation -- items in this list (one for each possible value of EventType -- ) and each EventType can be associated with the Lambda -- function only once. -- -- If you don't want to invoke any Lambda functions for the requests that -- match PathPattern , specify 0 for Quantity -- and omit Items . -- -- See: lambdaFunctionAssociations smart constructor. data LambdaFunctionAssociations -- | Creates a value of LambdaFunctionAssociations with the minimum -- fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- lambdaFunctionAssociations :: Int -> LambdaFunctionAssociations -- | Optional : A complex type that contains -- LambdaFunctionAssociation items for this cache behavior. If -- Quantity is 0 , you can omit Items . lfaItems :: Lens' LambdaFunctionAssociations [LambdaFunctionAssociation] -- | The number of Lambda function associations for this cache behavior. lfaQuantity :: Lens' LambdaFunctionAssociations Int -- | A complex type that controls whether access logs are written for the -- distribution. -- -- See: loggingConfig smart constructor. data LoggingConfig -- | Creates a value of LoggingConfig with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- loggingConfig :: Bool -> Bool -> Text -> Text -> LoggingConfig -- | Specifies whether you want CloudFront to save access logs to an Amazon -- S3 bucket. If you don't want to enable logging when you create a -- distribution or if you want to disable logging for an existing -- distribution, specify false for Enabled , and -- specify empty Bucket and Prefix elements. If you -- specify false for Enabled but you specify values for -- Bucket , prefix , and IncludeCookies , the -- values are automatically deleted. lcEnabled :: Lens' LoggingConfig Bool -- | Specifies whether you want CloudFront to include cookies in access -- logs, specify true for IncludeCookies . If you -- choose to include cookies in logs, CloudFront logs all cookies -- regardless of how you configure the cache behaviors for this -- distribution. If you don't want to include cookies when you create a -- distribution or if you want to disable include cookies for an existing -- distribution, specify false for IncludeCookies . lcIncludeCookies :: Lens' LoggingConfig Bool -- | The Amazon S3 bucket to store the access logs in, for example, -- myawslogbucket.s3.amazonaws.com . lcBucket :: Lens' LoggingConfig Text -- | An optional string that you want CloudFront to prefix to the access -- log filenames for this distribution, for example, -- myprefix/ . If you want to enable logging, but you don't want -- to specify a prefix, you still must include an empty Prefix -- element in the Logging element. lcPrefix :: Lens' LoggingConfig Text -- | A complex type that describes the Amazon S3 bucket or the HTTP server -- (for example, a web server) from which CloudFront gets your files. You -- must create at least one origin. -- -- For the current limit on the number of origins that you can create for -- a distribution, see Amazon CloudFront Limits in the AWS -- General Reference . -- -- See: origin smart constructor. data Origin -- | Creates a value of Origin with the minimum fields required to -- make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- origin :: Text -> Text -> Origin -- | A complex type that contains names and values for the custom headers -- that you want. oCustomHeaders :: Lens' Origin (Maybe CustomHeaders) -- | A complex type that contains information about a custom origin. If the -- origin is an Amazon S3 bucket, use the S3OriginConfig element -- instead. oCustomOriginConfig :: Lens' Origin (Maybe CustomOriginConfig) -- | A complex type that contains information about the Amazon S3 origin. -- If the origin is a custom origin, use the CustomOriginConfig -- element instead. oS3OriginConfig :: Lens' Origin (Maybe S3OriginConfig) -- | An optional element that causes CloudFront to request your content -- from a directory in your Amazon S3 bucket or your custom origin. When -- you include the OriginPath element, specify the directory -- name, beginning with a / . CloudFront appends the directory -- name to the value of DomainName , for example, -- example.com/production . Do not include a / at the -- end of the directory name. For example, suppose you've specified the -- following values for your distribution: * DomainName : An -- Amazon S3 bucket named myawsbucket . * OriginPath : -- /production * CNAME : example.com When a -- user enters example.com/index.html in a browser, CloudFront -- sends a request to Amazon S3 for -- myawsbucketproductionindex.html . When a user enters -- example.comacmeindex.html in a browser, CloudFront -- sends a request to Amazon S3 for -- myawsbucketproductionacme/index.html . oOriginPath :: Lens' Origin (Maybe Text) -- | A unique identifier for the origin. The value of Id must be -- unique within the distribution. When you specify the value of -- TargetOriginId for the default cache behavior or for another -- cache behavior, you indicate the origin to which you want the cache -- behavior to route requests by specifying the value of the Id -- element for that origin. When a request matches the path pattern for -- that cache behavior, CloudFront routes the request to the specified -- origin. For more information, see Cache Behavior Settings in -- the Amazon CloudFront Developer Guide . oId :: Lens' Origin Text -- | Amazon S3 origins : The DNS name of the Amazon S3 bucket from -- which you want CloudFront to get objects for this origin, for example, -- myawsbucket.s3.amazonaws.com . Constraints for Amazon S3 -- origins: * If you configured Amazon S3 Transfer Acceleration for your -- bucket, don't specify the s3-accelerate endpoint for -- DomainName . * The bucket name must be between 3 and 63 -- characters long (inclusive). * The bucket name must contain only -- lowercase characters, numbers, periods, underscores, and dashes. * The -- bucket name must not contain adjacent periods. Custom Origins : -- The DNS domain name for the HTTP server from which you want CloudFront -- to get objects for this origin, for example, www.example.com -- . Constraints for custom origins: * DomainName must be a -- valid DNS name that contains only a-z, A-Z, 0-9, dot (.), hyphen (-), -- or underscore (_) characters. * The name cannot exceed 128 characters. oDomainName :: Lens' Origin Text -- | A complex type that contains HeaderName and -- HeaderValue elements, if any, for this distribution. -- -- See: originCustomHeader smart constructor. data OriginCustomHeader -- | Creates a value of OriginCustomHeader with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- originCustomHeader :: Text -> Text -> OriginCustomHeader -- | The name of a header that you want CloudFront to forward to your -- origin. For more information, see Forwarding Custom Headers to Your -- Origin (Web Distributions Only) in the Amazon Amazon CloudFront -- Developer Guide . ochHeaderName :: Lens' OriginCustomHeader Text -- | The value for the header that you specified in the HeaderName -- field. ochHeaderValue :: Lens' OriginCustomHeader Text -- | A complex type that contains information about the SSL/TLS protocols -- that CloudFront can use when establishing an HTTPS connection with -- your origin. -- -- See: originSSLProtocols smart constructor. data OriginSSLProtocols -- | Creates a value of OriginSSLProtocols with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- originSSLProtocols :: Int -> OriginSSLProtocols -- | The number of SSL/TLS protocols that you want to allow CloudFront to -- use when establishing an HTTPS connection with this origin. ospQuantity :: Lens' OriginSSLProtocols Int -- | A list that contains allowed SSL/TLS protocols for this distribution. ospItems :: Lens' OriginSSLProtocols [SSLProtocol] -- | A complex type that contains information about origins for this -- distribution. -- -- See: origins smart constructor. data Origins -- | Creates a value of Origins with the minimum fields required to -- make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- origins :: Int -> Origins -- | A complex type that contains origins for this distribution. oItems :: Lens' Origins (Maybe (NonEmpty Origin)) -- | The number of origins for this distribution. oQuantity :: Lens' Origins Int -- | A complex type that contains information about the objects that you -- want to invalidate. For more information, see Specifying the -- Objects to Invalidate in the Amazon CloudFront Developer -- Guide . -- -- See: paths smart constructor. data Paths -- | Creates a value of Paths with the minimum fields required to -- make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- paths :: Int -> Paths -- | A complex type that contains a list of the paths that you want to -- invalidate. pItems :: Lens' Paths [Text] -- | The number of objects that you want to invalidate. pQuantity :: Lens' Paths Int -- | A complex data type of public keys you add to CloudFront to use with -- features like field-level encryption. -- -- See: publicKey smart constructor. data PublicKey -- | Creates a value of PublicKey with the minimum fields required -- to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- publicKey :: Text -> UTCTime -> PublicKeyConfig -> PublicKey -- | A unique ID assigned to a public key you've added to CloudFront. pkId :: Lens' PublicKey Text -- | A time you added a public key to CloudFront. pkCreatedTime :: Lens' PublicKey UTCTime -- | A complex data type for a public key you add to CloudFront to use with -- features like field-level encryption. pkPublicKeyConfig :: Lens' PublicKey PublicKeyConfig -- | Information about a public key you add to CloudFront to use with -- features like field-level encryption. -- -- See: publicKeyConfig smart constructor. data PublicKeyConfig -- | Creates a value of PublicKeyConfig with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- publicKeyConfig :: Text -> Text -> Text -> PublicKeyConfig -- | An optional comment about a public key. pkcComment :: Lens' PublicKeyConfig (Maybe Text) -- | A unique number that ensures the request can't be replayed. pkcCallerReference :: Lens' PublicKeyConfig Text -- | The name for a public key you add to CloudFront to use with features -- like field-level encryption. pkcName :: Lens' PublicKeyConfig Text -- | The encoded public key that you want to add to CloudFront to use with -- features like field-level encryption. pkcEncodedKey :: Lens' PublicKeyConfig Text -- | A list of public keys you've added to CloudFront to use with features -- like field-level encryption. -- -- See: publicKeyList smart constructor. data PublicKeyList -- | Creates a value of PublicKeyList with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- publicKeyList :: Int -> Int -> PublicKeyList -- | An array of information about a public key you add to CloudFront to -- use with features like field-level encryption. pklItems :: Lens' PublicKeyList [PublicKeySummary] -- | If there are more elements to be listed, this element is present and -- contains the value that you can use for the Marker request -- parameter to continue listing your public keys where you left off. pklNextMarker :: Lens' PublicKeyList (Maybe Text) -- | The maximum number of public keys you want in the response body. pklMaxItems :: Lens' PublicKeyList Int -- | The number of public keys you added to CloudFront to use with features -- like field-level encryption. pklQuantity :: Lens' PublicKeyList Int -- | Public key information summary. -- -- See: publicKeySummary smart constructor. data PublicKeySummary -- | Creates a value of PublicKeySummary with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- publicKeySummary :: Text -> Text -> UTCTime -> Text -> PublicKeySummary -- | Comment for public key information summary. pksComment :: Lens' PublicKeySummary (Maybe Text) -- | ID for public key information summary. pksId :: Lens' PublicKeySummary Text -- | Name for public key information summary. pksName :: Lens' PublicKeySummary Text -- | Creation time for public key information summary. pksCreatedTime :: Lens' PublicKeySummary UTCTime -- | Encoded key for public key information summary. pksEncodedKey :: Lens' PublicKeySummary Text -- | Query argument-profile mapping for field-level encryption. -- -- See: queryArgProfile smart constructor. data QueryArgProfile -- | Creates a value of QueryArgProfile with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- queryArgProfile :: Text -> Text -> QueryArgProfile -- | Query argument for field-level encryption query argument-profile -- mapping. qapQueryArg :: Lens' QueryArgProfile Text -- | ID of profile to use for field-level encryption query argument-profile -- mapping qapProfileId :: Lens' QueryArgProfile Text -- | Configuration for query argument-profile mapping for field-level -- encryption. -- -- See: queryArgProfileConfig smart constructor. data QueryArgProfileConfig -- | Creates a value of QueryArgProfileConfig with the minimum -- fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- queryArgProfileConfig :: Bool -> QueryArgProfileConfig -- | Profiles specified for query argument-profile mapping for field-level -- encryption. qapcQueryArgProfiles :: Lens' QueryArgProfileConfig (Maybe QueryArgProfiles) -- | Flag to set if you want a request to be forwarded to the origin even -- if the profile specified by the field-level encryption query argument, -- fle-profile, is unknown. qapcForwardWhenQueryArgProfileIsUnknown :: Lens' QueryArgProfileConfig Bool -- | Query argument-profile mapping for field-level encryption. -- -- See: queryArgProfiles smart constructor. data QueryArgProfiles -- | Creates a value of QueryArgProfiles with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- queryArgProfiles :: Int -> QueryArgProfiles -- | Number of items for query argument-profile mapping for field-level -- encryption. qapItems :: Lens' QueryArgProfiles [QueryArgProfile] -- | Number of profiles for query argument-profile mapping for field-level -- encryption. qapQuantity :: Lens' QueryArgProfiles Int -- | See: queryStringCacheKeys smart constructor. data QueryStringCacheKeys -- | Creates a value of QueryStringCacheKeys with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- queryStringCacheKeys :: Int -> QueryStringCacheKeys -- | (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 . qsckItems :: Lens' QueryStringCacheKeys [Text] -- | The number of whitelisted query string parameters for this -- cache behavior. qsckQuantity :: Lens' QueryStringCacheKeys Int -- | A complex type that identifies ways in which you want to restrict -- distribution of your content. -- -- See: restrictions smart constructor. data Restrictions -- | Creates a value of Restrictions with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- restrictions :: GeoRestriction -> Restrictions -- | Undocumented member. rGeoRestriction :: Lens' Restrictions GeoRestriction -- | A complex type that contains information about the Amazon S3 bucket -- from which you want CloudFront to get your media files for -- distribution. -- -- See: s3Origin smart constructor. data S3Origin -- | Creates a value of S3Origin with the minimum fields required to -- make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- s3Origin :: Text -> Text -> S3Origin -- | The DNS name of the Amazon S3 origin. soDomainName :: Lens' S3Origin Text -- | The CloudFront origin access identity to associate with the RTMP -- distribution. Use an origin access identity to configure the -- distribution so that end users can only access objects in an Amazon S3 -- bucket through CloudFront. If you want end users to be able to access -- objects using either the CloudFront URL or the Amazon S3 URL, specify -- an empty OriginAccessIdentity element. To delete the origin -- access identity from an existing distribution, update the distribution -- configuration and include an empty OriginAccessIdentity -- element. To replace the origin access identity, update the -- distribution configuration and specify the new origin access identity. -- For more information, see Using an Origin Access Identity to -- Restrict Access to Your Amazon S3 Content in the Amazon Amazon -- CloudFront Developer Guide . soOriginAccessIdentity :: Lens' S3Origin Text -- | A complex type that contains information about the Amazon S3 origin. -- If the origin is a custom origin, use the CustomOriginConfig -- element instead. -- -- See: s3OriginConfig smart constructor. data S3OriginConfig -- | Creates a value of S3OriginConfig with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- s3OriginConfig :: Text -> S3OriginConfig -- | The CloudFront origin access identity to associate with the origin. -- Use an origin access identity to configure the origin so that viewers -- can only access objects in an Amazon S3 bucket through -- CloudFront. The format of the value is: -- origin-access-identitycloudfrontID-of-origin-access-identity -- where ID-of-origin-access-identity is the value that -- CloudFront returned in the ID element when you created the -- origin access identity. If you want viewers to be able to access -- objects using either the CloudFront URL or the Amazon S3 URL, specify -- an empty OriginAccessIdentity element. To delete the origin -- access identity from an existing distribution, update the distribution -- configuration and include an empty OriginAccessIdentity -- element. To replace the origin access identity, update the -- distribution configuration and specify the new origin access identity. -- For more information about the origin access identity, see Serving -- Private Content through CloudFront in the Amazon CloudFront -- Developer Guide . socOriginAccessIdentity :: Lens' S3OriginConfig Text -- | A complex type that lists the AWS accounts that were included in the -- TrustedSigners complex type, as well as their active -- CloudFront key pair IDs, if any. -- -- See: signer smart constructor. data Signer -- | Creates a value of Signer with the minimum fields required to -- make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- signer :: Signer -- | An AWS account that is included in the TrustedSigners complex -- type for this RTMP distribution. Valid values include: * self -- , which is the AWS account used to create the distribution. * An AWS -- account number. sAWSAccountNumber :: Lens' Signer (Maybe Text) -- | A complex type that lists the active CloudFront key pairs, if any, -- that are associated with AwsAccountNumber . sKeyPairIds :: Lens' Signer (Maybe KeyPairIds) -- | A streaming distribution. -- -- See: streamingDistribution smart constructor. data StreamingDistribution -- | Creates a value of StreamingDistribution with the minimum -- fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- streamingDistribution :: Text -> Text -> Text -> Text -> ActiveTrustedSigners -> StreamingDistributionConfig -> StreamingDistribution -- | The date and time that the distribution was last modified. sdLastModifiedTime :: Lens' StreamingDistribution (Maybe UTCTime) -- | The identifier for the RTMP distribution. For example: -- EGTXBD79EXAMPLE . sdId :: Lens' StreamingDistribution Text -- | Undocumented member. sdARN :: Lens' StreamingDistribution Text -- | The current status of the RTMP distribution. When the status is -- Deployed , the distribution's information is propagated to -- all CloudFront edge locations. sdStatus :: Lens' StreamingDistribution Text -- | The domain name that corresponds to the streaming distribution, for -- example, s5c39gqb8ow64r.cloudfront.net . sdDomainName :: Lens' StreamingDistribution Text -- | A complex type that lists the AWS accounts, if any, that you included -- in the TrustedSigners complex type for this distribution. -- These are the accounts that you want to allow to create signed URLs -- for private content. The Signer complex type lists the AWS -- account number of the trusted signer or self if the signer is -- the AWS account that created the distribution. The Signer -- element also includes the IDs of any active CloudFront key pairs that -- are associated with the trusted signer's AWS account. If no -- KeyPairId element appears for a Signer , that signer -- can't create signed URLs. For more information, see Serving Private -- Content through CloudFront in the Amazon CloudFront Developer -- Guide . sdActiveTrustedSigners :: Lens' StreamingDistribution ActiveTrustedSigners -- | The current configuration information for the RTMP distribution. sdStreamingDistributionConfig :: Lens' StreamingDistribution StreamingDistributionConfig -- | The RTMP distribution's configuration information. -- -- See: streamingDistributionConfig smart constructor. data StreamingDistributionConfig -- | Creates a value of StreamingDistributionConfig with the minimum -- fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- streamingDistributionConfig :: Text -> S3Origin -> Text -> TrustedSigners -> Bool -> StreamingDistributionConfig -- | A complex type that contains information about CNAMEs (alternate -- domain names), if any, for this streaming distribution. sdcAliases :: Lens' StreamingDistributionConfig (Maybe Aliases) -- | A complex type that contains information about price class for this -- streaming distribution. sdcPriceClass :: Lens' StreamingDistributionConfig (Maybe PriceClass) -- | A complex type that controls whether access logs are written for the -- streaming distribution. sdcLogging :: Lens' StreamingDistributionConfig (Maybe StreamingLoggingConfig) -- | A unique number that ensures that the request can't be replayed. If -- the CallerReference is new (no matter the content of the -- StreamingDistributionConfig object), a new streaming -- distribution is created. If the CallerReference is a value -- that you already sent in a previous request to create a streaming -- distribution, and the content of the -- StreamingDistributionConfig is identical to the original -- request (ignoring white space), the response includes the same -- information returned to the original request. If the -- CallerReference is a value that you already sent in a -- previous request to create a streaming distribution but the content of -- the StreamingDistributionConfig is different from the -- original request, CloudFront returns a -- DistributionAlreadyExists error. sdcCallerReference :: Lens' StreamingDistributionConfig Text -- | A complex type that contains information about the Amazon S3 bucket -- from which you want CloudFront to get your media files for -- distribution. sdcS3Origin :: Lens' StreamingDistributionConfig S3Origin -- | Any comments you want to include about the streaming distribution. sdcComment :: Lens' StreamingDistributionConfig Text -- | A complex type that specifies any AWS accounts that you want to permit -- to create signed URLs for private content. If you want the -- distribution to use signed URLs, include this element; if you want the -- distribution to use public URLs, remove this element. For more -- information, see Serving Private Content through CloudFront in -- the Amazon CloudFront Developer Guide . sdcTrustedSigners :: Lens' StreamingDistributionConfig TrustedSigners -- | Whether the streaming distribution is enabled to accept user requests -- for content. sdcEnabled :: Lens' StreamingDistributionConfig Bool -- | A streaming distribution Configuration and a list of tags to be -- associated with the streaming distribution. -- -- See: streamingDistributionConfigWithTags smart -- constructor. data StreamingDistributionConfigWithTags -- | Creates a value of StreamingDistributionConfigWithTags with the -- minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- streamingDistributionConfigWithTags :: StreamingDistributionConfig -> Tags -> StreamingDistributionConfigWithTags -- | A streaming distribution Configuration. sdcwtStreamingDistributionConfig :: Lens' StreamingDistributionConfigWithTags StreamingDistributionConfig -- | A complex type that contains zero or more Tag elements. sdcwtTags :: Lens' StreamingDistributionConfigWithTags Tags -- | A streaming distribution list. -- -- See: streamingDistributionList smart constructor. data StreamingDistributionList -- | Creates a value of StreamingDistributionList with the minimum -- fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- streamingDistributionList :: Text -> Int -> Bool -> Int -> StreamingDistributionList -- | A complex type that contains one StreamingDistributionSummary -- element for each distribution that was created by the current AWS -- account. sdlItems :: Lens' StreamingDistributionList [StreamingDistributionSummary] -- | If IsTruncated is true , this element is present and -- contains the value you can use for the Marker request -- parameter to continue listing your RTMP distributions where they left -- off. sdlNextMarker :: Lens' StreamingDistributionList (Maybe Text) -- | The value you provided for the Marker request parameter. sdlMarker :: Lens' StreamingDistributionList Text -- | The value you provided for the MaxItems request parameter. sdlMaxItems :: Lens' StreamingDistributionList Int -- | 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. sdlIsTruncated :: Lens' StreamingDistributionList Bool -- | The number of streaming distributions that were created by the current -- AWS account. sdlQuantity :: Lens' StreamingDistributionList Int -- | A summary of the information for an Amazon CloudFront streaming -- distribution. -- -- See: streamingDistributionSummary smart constructor. data StreamingDistributionSummary -- | Creates a value of StreamingDistributionSummary with the -- minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- streamingDistributionSummary :: Text -> Text -> Text -> UTCTime -> Text -> S3Origin -> Aliases -> TrustedSigners -> Text -> PriceClass -> Bool -> StreamingDistributionSummary -- | The identifier for the distribution, for example, -- EDFDVBD632BHDS5 . sdsId :: Lens' StreamingDistributionSummary Text -- | 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. sdsARN :: Lens' StreamingDistributionSummary Text -- | Indicates the current status of the distribution. When the status is -- Deployed , the distribution's information is fully propagated -- throughout the Amazon CloudFront system. sdsStatus :: Lens' StreamingDistributionSummary Text -- | The date and time the distribution was last modified. sdsLastModifiedTime :: Lens' StreamingDistributionSummary UTCTime -- | The domain name corresponding to the distribution, for example, -- d111111abcdef8.cloudfront.net . sdsDomainName :: Lens' StreamingDistributionSummary Text -- | A complex type that contains information about the Amazon S3 bucket -- from which you want CloudFront to get your media files for -- distribution. sdsS3Origin :: Lens' StreamingDistributionSummary S3Origin -- | A complex type that contains information about CNAMEs (alternate -- domain names), if any, for this streaming distribution. sdsAliases :: Lens' StreamingDistributionSummary Aliases -- | A complex type that specifies the AWS accounts, if any, that you want -- to allow to create signed URLs for private content. If you want to -- require signed URLs in requests for objects in the target origin that -- match the PathPattern for this cache behavior, specify -- true for Enabled , and specify the applicable values -- for Quantity and Items .If you don't want to require -- signed URLs in requests for objects that match PathPattern , -- specify false for Enabled and 0 for -- Quantity . Omit Items . To add, change, or remove -- one or more trusted signers, change Enabled to true -- (if it's currently false ), change Quantity as -- applicable, and specify all of the trusted signers that you want to -- include in the updated distribution. sdsTrustedSigners :: Lens' StreamingDistributionSummary TrustedSigners -- | The comment originally specified when this distribution was created. sdsComment :: Lens' StreamingDistributionSummary Text -- | Undocumented member. sdsPriceClass :: Lens' StreamingDistributionSummary PriceClass -- | Whether the distribution is enabled to accept end user requests for -- content. sdsEnabled :: Lens' StreamingDistributionSummary Bool -- | A complex type that controls whether access logs are written for this -- streaming distribution. -- -- See: streamingLoggingConfig smart constructor. data StreamingLoggingConfig -- | Creates a value of StreamingLoggingConfig with the minimum -- fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- streamingLoggingConfig :: Bool -> Text -> Text -> StreamingLoggingConfig -- | Specifies whether you want CloudFront to save access logs to an Amazon -- S3 bucket. If you don't want to enable logging when you create a -- streaming distribution or if you want to disable logging for an -- existing streaming distribution, specify false for -- Enabled , and specify empty Bucket and -- Prefix elements. If you specify false for -- Enabled but you specify values for Bucket and -- Prefix , the values are automatically deleted. slcEnabled :: Lens' StreamingLoggingConfig Bool -- | The Amazon S3 bucket to store the access logs in, for example, -- myawslogbucket.s3.amazonaws.com . slcBucket :: Lens' StreamingLoggingConfig Text -- | An optional string that you want CloudFront to prefix to the access -- log filenames for this streaming distribution, for example, -- myprefix/ . If you want to enable logging, but you don't want -- to specify a prefix, you still must include an empty Prefix -- element in the Logging element. slcPrefix :: Lens' StreamingLoggingConfig Text -- | A complex type that contains Tag key and Tag value. -- -- See: tag smart constructor. data Tag -- | Creates a value of Tag with the minimum fields required to make -- a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- tag :: Text -> Tag -- | 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 _ - . : / = + @ . tagValue :: Lens' Tag (Maybe Text) -- | 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 _ -- - . : / = + @ . tagKey :: Lens' Tag Text -- | A complex type that contains zero or more Tag elements. -- -- See: tagKeys smart constructor. data TagKeys -- | Creates a value of TagKeys with the minimum fields required to -- make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- tagKeys :: TagKeys -- | A complex type that contains Tag key elements. tkItems :: Lens' TagKeys [Text] -- | A complex type that contains zero or more Tag elements. -- -- See: tags smart constructor. data Tags -- | Creates a value of Tags with the minimum fields required to -- make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- tags :: Tags -- | A complex type that contains Tag elements. tItems :: Lens' Tags [Tag] -- | A complex type that specifies the AWS accounts, if any, that you want -- to allow to create signed URLs for private content. -- -- If you want to require signed URLs in requests for objects in the -- target origin that match the PathPattern for this cache -- behavior, specify true for Enabled , and specify the -- applicable values for Quantity and Items . For more -- information, see Serving Private Content through CloudFront in -- the Amazon Amazon CloudFront Developer Guide . -- -- If you don't want to require signed URLs in requests for objects that -- match PathPattern , specify false for -- Enabled and 0 for Quantity . Omit -- Items . -- -- To add, change, or remove one or more trusted signers, change -- Enabled to true (if it's currently false ), -- change Quantity as applicable, and specify all of the trusted -- signers that you want to include in the updated distribution. -- -- For more information about updating the distribution configuration, -- see DistributionConfig . -- -- See: trustedSigners smart constructor. data TrustedSigners -- | Creates a value of TrustedSigners with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- trustedSigners :: Bool -> Int -> TrustedSigners -- | Optional : A complex type that contains trusted signers for -- this cache behavior. If Quantity is 0 , you can omit -- Items . tsItems :: Lens' TrustedSigners [Text] -- | Specifies whether you want to require viewers to use signed URLs to -- access the files specified by PathPattern and -- TargetOriginId . tsEnabled :: Lens' TrustedSigners Bool -- | The number of trusted signers for this cache behavior. tsQuantity :: Lens' TrustedSigners Int -- | A complex type that specifies the following: -- -- -- -- You must specify only one of the following values: -- -- -- -- Don't specify false for CloudFrontDefaultCertificate -- . -- -- If you want viewers to use HTTP instead of HTTPS to request your -- objects : Specify the following value: -- --
--   CloudFrontDefaultCertificatetrueCloudFrontDefaultCertificate
--   
-- -- In addition, specify allow-all for -- ViewerProtocolPolicy for all of your cache behaviors. -- -- If you want viewers to use HTTPS to request your objects : -- Choose the type of certificate that you want to use based on whether -- you're using an alternate domain name for your objects or the -- CloudFront domain name: -- -- -- -- If you specify ACMCertificateArn or IAMCertificateId -- , you must also specify a value for SSLSupportMethod . -- -- If you choose to use an ACM certificate or a certificate in the IAM -- certificate store, we recommend that you use only an alternate domain -- name in your object URLs (https://example.com/logo.jpg -- ). If you use the domain name that is associated with your CloudFront -- distribution (such as -- https://d111111abcdef8.cloudfront.net/logo.jpg ) and -- the viewer supports SNI , then CloudFront behaves normally. -- However, if the browser does not support SNI, the user's experience -- depends on the value that you choose for SSLSupportMethod : -- -- -- --
--   CloudFrontDefaultCertificatetrueCloudFrontDefaultCertificate
--   
-- -- If you want viewers to use HTTPS, you must also specify one of the -- following values in your cache behaviors: -- -- -- -- You can also optionally require that CloudFront use HTTPS to -- communicate with your origin by specifying one of the following values -- for the applicable origins: -- -- -- -- For more information, see Using Alternate Domain Names and -- HTTPS in the Amazon CloudFront Developer Guide . -- -- See: viewerCertificate smart constructor. data ViewerCertificate -- | Creates a value of ViewerCertificate with the minimum fields -- required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- viewerCertificate :: ViewerCertificate -- | If you specify a value for 'ViewerCertificate$ACMCertificateArn' or -- for 'ViewerCertificate$IAMCertificateId' , you must also specify how -- you want CloudFront to serve HTTPS requests: using a method that works -- for all clients or one that works for most clients: * vip : -- CloudFront uses dedicated IP addresses for your content and can -- respond to HTTPS requests from any viewer. However, you will incur -- additional monthly charges. * sni-only : CloudFront can -- respond to HTTPS requests from viewers that support Server Name -- Indication (SNI). All modern browsers support SNI, but some browsers -- still in use don't support SNI. If some of your users' browsers don't -- support SNI, we recommend that you do one of the following: * Use the -- vip option (dedicated IP addresses) instead of -- sni-only . * Use the CloudFront SSLTLS certificate instead -- of a custom certificate. This requires that you use the CloudFront -- domain name of your distribution in the URLs for your objects, for -- example, @https:d111111abcdef8.cloudfront.netlogo.png . -- * If you can control which browser your users use, upgrade the browser -- to one that supports SNI. * Use HTTP instead of HTTPS. Don't specify a -- value for SSLSupportMethod if you specified -- CloudFrontDefaultCertificatetrueCloudFrontDefaultCertificate@ -- . For more information, see Using Alternate Domain Names and -- HTTPS in the Amazon CloudFront Developer Guide . vcSSLSupportMethod :: Lens' ViewerCertificate (Maybe SSLSupportMethod) -- | For information about how and when to use ACMCertificateArn , -- see ViewerCertificate . vcACMCertificateARN :: Lens' ViewerCertificate (Maybe Text) -- | This field has been deprecated. Use one of the following fields -- instead: * 'ViewerCertificate$ACMCertificateArn' * -- 'ViewerCertificate$IAMCertificateId' * -- 'ViewerCertificate$CloudFrontDefaultCertificate' vcCertificateSource :: Lens' ViewerCertificate (Maybe CertificateSource) -- | Specify the security policy that you want CloudFront to use for HTTPS -- connections. A security policy determines two settings: * The minimum -- SSLTLS protocol that CloudFront uses to communicate with viewers * -- The cipher that CloudFront uses to encrypt the content that it returns -- to viewers We recommend that you specify TLSv1.1_2016 unless -- your users are using browsers or devices that do not support TLSv1.1 -- or later. When both of the following are true, you must specify -- TLSv1 or later for the security policy: * You're using a -- custom certificate: you specified a value for -- ACMCertificateArn or for IAMCertificateId * You're -- using SNI: you specified sni-only for -- SSLSupportMethod If you specify true for -- CloudFrontDefaultCertificate , CloudFront automatically sets -- the security policy to TLSv1 regardless of the value that you -- specify for MinimumProtocolVersion . For information about -- the relationship between the security policy that you choose and the -- protocols and ciphers that CloudFront uses to communicate with -- viewers, see -- <http:docs.aws.amazon.comAmazonCloudFrontlatestDeveloperGuidesecure-connections-supported-viewer-protocols-ciphers.html#secure-connections-supported-ciphers -- Supported SSLTLS Protocols and Ciphers for Communication Between -- Viewers and CloudFront> in the Amazon CloudFront Developer -- Guide . vcMinimumProtocolVersion :: Lens' ViewerCertificate (Maybe MinimumProtocolVersion) -- | This field has been deprecated. Use one of the following fields -- instead: * 'ViewerCertificate$ACMCertificateArn' * -- 'ViewerCertificate$IAMCertificateId' * -- 'ViewerCertificate$CloudFrontDefaultCertificate' vcCertificate :: Lens' ViewerCertificate (Maybe Text) -- | For information about how and when to use IAMCertificateId , -- see ViewerCertificate . vcIAMCertificateId :: Lens' ViewerCertificate (Maybe Text) -- | For information about how and when to use -- CloudFrontDefaultCertificate , see ViewerCertificate . vcCloudFrontDefaultCertificate :: Lens' ViewerCertificate (Maybe Bool)