Class CfnCachePolicyPropsMixin

java.lang.Object
software.amazon.jsii.JsiiObject
software.amazon.awscdk.Mixin
software.amazon.awscdk.cfnpropertymixins.services.cloudfront.CfnCachePolicyPropsMixin
All Implemented Interfaces:
software.amazon.jsii.JsiiSerializable, software.constructs.IMixin

@Generated(value="jsii-pacmak/1.127.0 (build 2117ad5)", date="2026-03-11T13:19:57.003Z") @Stability(Stable) public class CfnCachePolicyPropsMixin extends Mixin implements software.constructs.IMixin
A cache policy.

When it's attached to a cache behavior, the cache policy determines the following:

  • The values that CloudFront includes in the cache key. These values can include HTTP headers, cookies, and URL query strings. CloudFront uses the cache key to find an object in its cache that it can return to the viewer.
  • The default, minimum, and maximum time to live (TTL) values that you want objects to stay in the CloudFront cache.

The headers, cookies, and query strings that are included in the cache key are also included in requests that CloudFront sends to the origin. CloudFront sends a request when it can't find a valid object in its cache that matches the request's cache key. If you want to send values to the origin but not include them in the cache key, use OriginRequestPolicy .

Example:

 // The code below shows an example of how to instantiate this type.
 // The values are placeholders you should change.
 import software.amazon.awscdk.cfnpropertymixins.services.cloudfront.*;
 import software.amazon.awscdk.*;
 IMergeStrategy mergeStrategy;
 CfnCachePolicyPropsMixin cfnCachePolicyPropsMixin = CfnCachePolicyPropsMixin.Builder.create(CfnCachePolicyMixinProps.builder()
         .cachePolicyConfig(CachePolicyConfigProperty.builder()
                 .comment("comment")
                 .defaultTtl(123)
                 .maxTtl(123)
                 .minTtl(123)
                 .name("name")
                 .parametersInCacheKeyAndForwardedToOrigin(ParametersInCacheKeyAndForwardedToOriginProperty.builder()
                         .cookiesConfig(CookiesConfigProperty.builder()
                                 .cookieBehavior("cookieBehavior")
                                 .cookies(List.of("cookies"))
                                 .build())
                         .enableAcceptEncodingBrotli(false)
                         .enableAcceptEncodingGzip(false)
                         .headersConfig(HeadersConfigProperty.builder()
                                 .headerBehavior("headerBehavior")
                                 .headers(List.of("headers"))
                                 .build())
                         .queryStringsConfig(QueryStringsConfigProperty.builder()
                                 .queryStringBehavior("queryStringBehavior")
                                 .queryStrings(List.of("queryStrings"))
                                 .build())
                         .build())
                 .build())
         .build())
 .strategy(mergeStrategy)
 .build();
 

See Also:
  • Field Details

    • CFN_PROPERTY_KEYS

      @Stability(Stable) protected static final List<String> CFN_PROPERTY_KEYS
  • Constructor Details

    • CfnCachePolicyPropsMixin

      protected CfnCachePolicyPropsMixin(software.amazon.jsii.JsiiObjectRef objRef)
    • CfnCachePolicyPropsMixin

      protected CfnCachePolicyPropsMixin(software.amazon.jsii.JsiiObject.InitializationMode initializationMode)
    • CfnCachePolicyPropsMixin

      @Stability(Stable) public CfnCachePolicyPropsMixin(@NotNull CfnCachePolicyMixinProps props, @Nullable CfnPropertyMixinOptions options)
      Create a mixin to apply properties to AWS::CloudFront::CachePolicy.

      Parameters:
      props - L1 properties to apply. This parameter is required.
      options - Mixin options.
    • CfnCachePolicyPropsMixin

      @Stability(Stable) public CfnCachePolicyPropsMixin(@NotNull CfnCachePolicyMixinProps props)
      Create a mixin to apply properties to AWS::CloudFront::CachePolicy.

      Parameters:
      props - L1 properties to apply. This parameter is required.
  • Method Details

    • applyTo

      @Stability(Stable) public void applyTo(@NotNull software.constructs.IConstruct construct)
      Apply the mixin properties to the construct.

      Specified by:
      applyTo in interface software.constructs.IMixin
      Specified by:
      applyTo in class Mixin
      Parameters:
      construct - This parameter is required.
    • supports

      @Stability(Stable) @NotNull public Boolean supports(@NotNull software.constructs.IConstruct construct)
      Check if this mixin supports the given construct.

      Specified by:
      supports in interface software.constructs.IMixin
      Overrides:
      supports in class Mixin
      Parameters:
      construct - This parameter is required.
    • getProps

      @Stability(Stable) @NotNull protected CfnCachePolicyMixinProps getProps()
    • getStrategy

      @Stability(Stable) @NotNull protected IMergeStrategy getStrategy()