UNPKG

@aws-cdk/aws-cloudfront

Version:

The CDK Construct Library for AWS::CloudFront

637 lines 1.39 MB
{ "version": "2", "toolVersion": "1.58.0", "snippets": { "10bd60d716c0026654038306c399171ff86952eb7729868c89b673ff498d0c60": { "translations": { "python": { "source": "# Creates a distribution from an S3 bucket.\nmy_bucket = s3.Bucket(self, \"myBucket\")\ncloudfront.Distribution(self, \"myDist\",\n default_behavior=cloudfront.BehaviorOptions(origin=origins.S3Origin(my_bucket))\n)", "version": "2" }, "csharp": { "source": "// Creates a distribution from an S3 bucket.\nBucket myBucket = new Bucket(this, \"myBucket\");\nnew Distribution(this, \"myDist\", new DistributionProps {\n DefaultBehavior = new BehaviorOptions { Origin = new S3Origin(myBucket) }\n});", "version": "1" }, "java": { "source": "// Creates a distribution from an S3 bucket.\nBucket myBucket = new Bucket(this, \"myBucket\");\nDistribution.Builder.create(this, \"myDist\")\n .defaultBehavior(BehaviorOptions.builder().origin(new S3Origin(myBucket)).build())\n .build();", "version": "1" }, "go": { "source": "// Creates a distribution from an S3 bucket.\nmyBucket := s3.NewBucket(this, jsii.String(\"myBucket\"))\ncloudfront.NewDistribution(this, jsii.String(\"myDist\"), &distributionProps{\n\tdefaultBehavior: &behaviorOptions{\n\t\torigin: origins.NewS3Origin(myBucket),\n\t},\n})", "version": "1" }, "$": { "source": "// Creates a distribution from an S3 bucket.\nconst myBucket = new s3.Bucket(this, 'myBucket');\nnew cloudfront.Distribution(this, 'myDist', {\n defaultBehavior: { origin: new origins.S3Origin(myBucket) },\n});", "version": "0" } }, "location": { "api": { "api": "moduleReadme", "moduleFqn": "@aws-cdk/aws-cloudfront" }, "field": { "field": "markdown", "line": 41 } }, "didCompile": true, "fqnsReferenced": [ "@aws-cdk/aws-cloudfront-origins.S3Origin", "@aws-cdk/aws-cloudfront.BehaviorOptions", "@aws-cdk/aws-cloudfront.Distribution", "@aws-cdk/aws-cloudfront.DistributionProps", "@aws-cdk/aws-cloudfront.IOrigin", "@aws-cdk/aws-s3.Bucket", "@aws-cdk/aws-s3.IBucket", "constructs.Construct" ], "fullSource": "import { Construct } from 'constructs';\nimport { Duration, Stack } from '@aws-cdk/core';\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nimport * as origins from '@aws-cdk/aws-cloudfront-origins';\nimport * as s3 from '@aws-cdk/aws-s3';\nimport * as ec2 from '@aws-cdk/aws-ec2';\nimport * as elbv2 from '@aws-cdk/aws-elasticloadbalancingv2';\nimport * as lambda from '@aws-cdk/aws-lambda';\nimport * as path from 'path';\n\nclass Context extends Stack {\n constructor(scope: Construct, id: string) {\n super(scope, id);\n\n // Code snippet begins after !show marker below\n/// !show\n// Creates a distribution from an S3 bucket.\nconst myBucket = new s3.Bucket(this, 'myBucket');\nnew cloudfront.Distribution(this, 'myDist', {\n defaultBehavior: { origin: new origins.S3Origin(myBucket) },\n});\n/// !hide\n// Code snippet ended before !hide marker above\n }\n}\n", "syntaxKindCounter": { "10": 2, "75": 10, "104": 2, "193": 2, "194": 3, "197": 3, "225": 1, "226": 1, "242": 1, "243": 1, "281": 2 }, "fqnsFingerprint": "49e92ec085aad5b8d22e245fb94b14e8ee462b1549b098000bcc8789491d6e5d" }, "0eb41a91dbb6bf95b75f9eccf49aa981f61c0ea1edb1a877918ab75abf65e66c": { "translations": { "python": { "source": "# Creates a distribution from an ELBv2 load balancer\n# vpc: ec2.Vpc\n\n# Create an application load balancer in a VPC. 'internetFacing' must be 'true'\n# for CloudFront to access the load balancer and use it as an origin.\nlb = elbv2.ApplicationLoadBalancer(self, \"LB\",\n vpc=vpc,\n internet_facing=True\n)\ncloudfront.Distribution(self, \"myDist\",\n default_behavior=cloudfront.BehaviorOptions(origin=origins.LoadBalancerV2Origin(lb))\n)", "version": "2" }, "csharp": { "source": "// Creates a distribution from an ELBv2 load balancer\nVpc vpc;\n\n// Create an application load balancer in a VPC. 'internetFacing' must be 'true'\n// for CloudFront to access the load balancer and use it as an origin.\nApplicationLoadBalancer lb = new ApplicationLoadBalancer(this, \"LB\", new ApplicationLoadBalancerProps {\n Vpc = vpc,\n InternetFacing = true\n});\nnew Distribution(this, \"myDist\", new DistributionProps {\n DefaultBehavior = new BehaviorOptions { Origin = new LoadBalancerV2Origin(lb) }\n});", "version": "1" }, "java": { "source": "// Creates a distribution from an ELBv2 load balancer\nVpc vpc;\n\n// Create an application load balancer in a VPC. 'internetFacing' must be 'true'\n// for CloudFront to access the load balancer and use it as an origin.\nApplicationLoadBalancer lb = ApplicationLoadBalancer.Builder.create(this, \"LB\")\n .vpc(vpc)\n .internetFacing(true)\n .build();\nDistribution.Builder.create(this, \"myDist\")\n .defaultBehavior(BehaviorOptions.builder().origin(new LoadBalancerV2Origin(lb)).build())\n .build();", "version": "1" }, "go": { "source": "// Creates a distribution from an ELBv2 load balancer\nvar vpc vpc\n\n// Create an application load balancer in a VPC. 'internetFacing' must be 'true'\n// for CloudFront to access the load balancer and use it as an origin.\nlb := elbv2.NewApplicationLoadBalancer(this, jsii.String(\"LB\"), &applicationLoadBalancerProps{\n\tvpc: vpc,\n\tinternetFacing: jsii.Boolean(true),\n})\ncloudfront.NewDistribution(this, jsii.String(\"myDist\"), &distributionProps{\n\tdefaultBehavior: &behaviorOptions{\n\t\torigin: origins.NewLoadBalancerV2Origin(lb),\n\t},\n})", "version": "1" }, "$": { "source": "// Creates a distribution from an ELBv2 load balancer\ndeclare const vpc: ec2.Vpc;\n// Create an application load balancer in a VPC. 'internetFacing' must be 'true'\n// for CloudFront to access the load balancer and use it as an origin.\nconst lb = new elbv2.ApplicationLoadBalancer(this, 'LB', {\n vpc,\n internetFacing: true,\n});\nnew cloudfront.Distribution(this, 'myDist', {\n defaultBehavior: { origin: new origins.LoadBalancerV2Origin(lb) },\n});", "version": "0" } }, "location": { "api": { "api": "moduleReadme", "moduleFqn": "@aws-cdk/aws-cloudfront" }, "field": { "field": "markdown", "line": 60 } }, "didCompile": true, "fqnsReferenced": [ "@aws-cdk/aws-cloudfront-origins.LoadBalancerV2Origin", "@aws-cdk/aws-cloudfront.BehaviorOptions", "@aws-cdk/aws-cloudfront.Distribution", "@aws-cdk/aws-cloudfront.DistributionProps", "@aws-cdk/aws-cloudfront.IOrigin", "@aws-cdk/aws-ec2.IVpc", "@aws-cdk/aws-elasticloadbalancingv2.ApplicationLoadBalancer", "@aws-cdk/aws-elasticloadbalancingv2.ApplicationLoadBalancerProps", "@aws-cdk/aws-elasticloadbalancingv2.ILoadBalancerV2", "constructs.Construct" ], "fullSource": "// Hoisted imports begin after !show marker below\n/// !show\n// Creates a distribution from an ELBv2 load balancer\ndeclare const vpc: ec2.Vpc;\n/// !hide\n// Hoisted imports ended before !hide marker above\nimport { Construct } from 'constructs';\nimport { Duration, Stack } from '@aws-cdk/core';\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nimport * as origins from '@aws-cdk/aws-cloudfront-origins';\nimport * as s3 from '@aws-cdk/aws-s3';\nimport * as ec2 from '@aws-cdk/aws-ec2';\nimport * as elbv2 from '@aws-cdk/aws-elasticloadbalancingv2';\nimport * as lambda from '@aws-cdk/aws-lambda';\nimport * as path from 'path';\n\nclass Context extends Stack {\n constructor(scope: Construct, id: string) {\n super(scope, id);\n\n // Code snippet begins after !show marker below\n/// !show\n\n// Create an application load balancer in a VPC. 'internetFacing' must be 'true'\n// for CloudFront to access the load balancer and use it as an origin.\nconst lb = new elbv2.ApplicationLoadBalancer(this, 'LB', {\n vpc,\n internetFacing: true,\n});\nnew cloudfront.Distribution(this, 'myDist', {\n defaultBehavior: { origin: new origins.LoadBalancerV2Origin(lb) },\n});\n/// !hide\n// Code snippet ended before !hide marker above\n }\n}\n", "syntaxKindCounter": { "10": 2, "75": 15, "104": 2, "106": 1, "130": 1, "153": 1, "169": 1, "193": 3, "194": 3, "197": 3, "225": 2, "226": 1, "242": 2, "243": 2, "281": 3, "282": 1, "290": 1 }, "fqnsFingerprint": "4de76cf8d5e84c59b25c8b57db5260cdd20e105057793c94b71ab85bf4147608" }, "0d13777da28c0044f97c3b4fff394de8f2645067eb97f53765a9c7e13fe12b4e": { "translations": { "python": { "source": "# Creates a distribution from an HTTP endpoint\ncloudfront.Distribution(self, \"myDist\",\n default_behavior=cloudfront.BehaviorOptions(origin=origins.HttpOrigin(\"www.example.com\"))\n)", "version": "2" }, "csharp": { "source": "// Creates a distribution from an HTTP endpoint\n// Creates a distribution from an HTTP endpoint\nnew Distribution(this, \"myDist\", new DistributionProps {\n DefaultBehavior = new BehaviorOptions { Origin = new HttpOrigin(\"www.example.com\") }\n});", "version": "1" }, "java": { "source": "// Creates a distribution from an HTTP endpoint\n// Creates a distribution from an HTTP endpoint\nDistribution.Builder.create(this, \"myDist\")\n .defaultBehavior(BehaviorOptions.builder().origin(new HttpOrigin(\"www.example.com\")).build())\n .build();", "version": "1" }, "go": { "source": "// Creates a distribution from an HTTP endpoint\n// Creates a distribution from an HTTP endpoint\ncloudfront.NewDistribution(this, jsii.String(\"myDist\"), &distributionProps{\n\tdefaultBehavior: &behaviorOptions{\n\t\torigin: origins.NewHttpOrigin(jsii.String(\"www.example.com\")),\n\t},\n})", "version": "1" }, "$": { "source": "// Creates a distribution from an HTTP endpoint\nnew cloudfront.Distribution(this, 'myDist', {\n defaultBehavior: { origin: new origins.HttpOrigin('www.example.com') },\n});", "version": "0" } }, "location": { "api": { "api": "moduleReadme", "moduleFqn": "@aws-cdk/aws-cloudfront" }, "field": { "field": "markdown", "line": 78 } }, "didCompile": true, "fqnsReferenced": [ "@aws-cdk/aws-cloudfront-origins.HttpOrigin", "@aws-cdk/aws-cloudfront.BehaviorOptions", "@aws-cdk/aws-cloudfront.Distribution", "@aws-cdk/aws-cloudfront.DistributionProps", "@aws-cdk/aws-cloudfront.IOrigin", "constructs.Construct" ], "fullSource": "import { Construct } from 'constructs';\nimport { Duration, Stack } from '@aws-cdk/core';\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nimport * as origins from '@aws-cdk/aws-cloudfront-origins';\nimport * as s3 from '@aws-cdk/aws-s3';\nimport * as ec2 from '@aws-cdk/aws-ec2';\nimport * as elbv2 from '@aws-cdk/aws-elasticloadbalancingv2';\nimport * as lambda from '@aws-cdk/aws-lambda';\nimport * as path from 'path';\n\nclass Context extends Stack {\n constructor(scope: Construct, id: string) {\n super(scope, id);\n\n // Code snippet begins after !show marker below\n/// !show\n// Creates a distribution from an HTTP endpoint\nnew cloudfront.Distribution(this, 'myDist', {\n defaultBehavior: { origin: new origins.HttpOrigin('www.example.com') },\n});\n/// !hide\n// Code snippet ended before !hide marker above\n }\n}\n", "syntaxKindCounter": { "10": 2, "75": 6, "104": 1, "193": 2, "194": 2, "197": 2, "226": 1, "281": 2 }, "fqnsFingerprint": "7a41e224058aecd737105e71423fd8f7e2b689347196e7486dae2dff40bf74f3" }, "97d3c5a4afcb2902fc47831913f37a29426f7d0628f4bdfc4015763535020bb8": { "translations": { "python": { "source": "# To use your own domain name in a Distribution, you must associate a certificate\nimport aws_cdk.aws_certificatemanager as acm\nimport aws_cdk.aws_route53 as route53\n\n# hosted_zone: route53.HostedZone\n\n# my_bucket: s3.Bucket\n\nmy_certificate = acm.DnsValidatedCertificate(self, \"mySiteCert\",\n domain_name=\"www.example.com\",\n hosted_zone=hosted_zone\n)\ncloudfront.Distribution(self, \"myDist\",\n default_behavior=cloudfront.BehaviorOptions(origin=origins.S3Origin(my_bucket)),\n domain_names=[\"www.example.com\"],\n certificate=my_certificate\n)", "version": "2" }, "csharp": { "source": "// To use your own domain name in a Distribution, you must associate a certificate\nusing Amazon.CDK.AWS.CertificateManager;\nusing Amazon.CDK.AWS.Route53;\n\nHostedZone hostedZone;\n\nBucket myBucket;\n\nDnsValidatedCertificate myCertificate = new DnsValidatedCertificate(this, \"mySiteCert\", new DnsValidatedCertificateProps {\n DomainName = \"www.example.com\",\n HostedZone = hostedZone\n});\nnew Distribution(this, \"myDist\", new DistributionProps {\n DefaultBehavior = new BehaviorOptions { Origin = new S3Origin(myBucket) },\n DomainNames = new [] { \"www.example.com\" },\n Certificate = myCertificate\n});", "version": "1" }, "java": { "source": "// To use your own domain name in a Distribution, you must associate a certificate\nimport software.amazon.awscdk.services.certificatemanager.*;\nimport software.amazon.awscdk.services.route53.*;\n\nHostedZone hostedZone;\n\nBucket myBucket;\n\nDnsValidatedCertificate myCertificate = DnsValidatedCertificate.Builder.create(this, \"mySiteCert\")\n .domainName(\"www.example.com\")\n .hostedZone(hostedZone)\n .build();\nDistribution.Builder.create(this, \"myDist\")\n .defaultBehavior(BehaviorOptions.builder().origin(new S3Origin(myBucket)).build())\n .domainNames(List.of(\"www.example.com\"))\n .certificate(myCertificate)\n .build();", "version": "1" }, "go": { "source": "// To use your own domain name in a Distribution, you must associate a certificate\nimport acm \"github.com/aws-samples/dummy/awscdkawscertificatemanager\"\nimport route53 \"github.com/aws-samples/dummy/awscdkawsroute53\"\n\nvar hostedZone hostedZone\n\nvar myBucket bucket\n\nmyCertificate := acm.NewDnsValidatedCertificate(this, jsii.String(\"mySiteCert\"), &dnsValidatedCertificateProps{\n\tdomainName: jsii.String(\"www.example.com\"),\n\thostedZone: hostedZone,\n})\ncloudfront.NewDistribution(this, jsii.String(\"myDist\"), &distributionProps{\n\tdefaultBehavior: &behaviorOptions{\n\t\torigin: origins.NewS3Origin(myBucket),\n\t},\n\tdomainNames: []*string{\n\t\tjsii.String(\"www.example.com\"),\n\t},\n\tcertificate: myCertificate,\n})", "version": "1" }, "$": { "source": "// To use your own domain name in a Distribution, you must associate a certificate\nimport * as acm from '@aws-cdk/aws-certificatemanager';\nimport * as route53 from '@aws-cdk/aws-route53';\n\ndeclare const hostedZone: route53.HostedZone;\nconst myCertificate = new acm.DnsValidatedCertificate(this, 'mySiteCert', {\n domainName: 'www.example.com',\n hostedZone,\n});\n\ndeclare const myBucket: s3.Bucket;\nnew cloudfront.Distribution(this, 'myDist', {\n defaultBehavior: { origin: new origins.S3Origin(myBucket) },\n domainNames: ['www.example.com'],\n certificate: myCertificate,\n});", "version": "0" } }, "location": { "api": { "api": "moduleReadme", "moduleFqn": "@aws-cdk/aws-cloudfront" }, "field": { "field": "markdown", "line": 96 } }, "didCompile": true, "fqnsReferenced": [ "@aws-cdk/aws-certificatemanager.DnsValidatedCertificate", "@aws-cdk/aws-certificatemanager.DnsValidatedCertificateProps", "@aws-cdk/aws-certificatemanager.ICertificate", "@aws-cdk/aws-cloudfront-origins.S3Origin", "@aws-cdk/aws-cloudfront.BehaviorOptions", "@aws-cdk/aws-cloudfront.Distribution", "@aws-cdk/aws-cloudfront.DistributionProps", "@aws-cdk/aws-cloudfront.IOrigin", "@aws-cdk/aws-route53.IHostedZone", "@aws-cdk/aws-s3.IBucket", "constructs.Construct" ], "fullSource": "// Hoisted imports begin after !show marker below\n/// !show\n// To use your own domain name in a Distribution, you must associate a certificate\nimport * as acm from '@aws-cdk/aws-certificatemanager';\nimport * as route53 from '@aws-cdk/aws-route53';\n\ndeclare const hostedZone: route53.HostedZone;\n\ndeclare const myBucket: s3.Bucket;\n/// !hide\n// Hoisted imports ended before !hide marker above\nimport { Construct } from 'constructs';\nimport { Duration, Stack } from '@aws-cdk/core';\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nimport * as origins from '@aws-cdk/aws-cloudfront-origins';\nimport * as s3 from '@aws-cdk/aws-s3';\nimport * as ec2 from '@aws-cdk/aws-ec2';\nimport * as elbv2 from '@aws-cdk/aws-elasticloadbalancingv2';\nimport * as lambda from '@aws-cdk/aws-lambda';\nimport * as path from 'path';\n\nclass Context extends Stack {\n constructor(scope: Construct, id: string) {\n super(scope, id);\n\n // Code snippet begins after !show marker below\n/// !show\n\nconst myCertificate = new acm.DnsValidatedCertificate(this, 'mySiteCert', {\n domainName: 'www.example.com',\n hostedZone,\n});\nnew cloudfront.Distribution(this, 'myDist', {\n defaultBehavior: { origin: new origins.S3Origin(myBucket) },\n domainNames: ['www.example.com'],\n certificate: myCertificate,\n});\n/// !hide\n// Code snippet ended before !hide marker above\n }\n}\n", "syntaxKindCounter": { "10": 6, "75": 23, "104": 2, "130": 2, "153": 2, "169": 2, "192": 1, "193": 3, "194": 3, "197": 3, "225": 3, "226": 1, "242": 3, "243": 3, "254": 2, "255": 2, "256": 2, "281": 5, "282": 1, "290": 1 }, "fqnsFingerprint": "b861b729494f95b493ce4ad2540c18a92a031afb5f75af039eebb648ff85b59d" }, "60e33da81d7b188ed87bff364c5b18f6f846e155127f116834ecba505a4a06e9": { "translations": { "python": { "source": "# Create a Distribution with a custom domain name and a minimum protocol version.\n# my_bucket: s3.Bucket\n\ncloudfront.Distribution(self, \"myDist\",\n default_behavior=cloudfront.BehaviorOptions(origin=origins.S3Origin(my_bucket)),\n domain_names=[\"www.example.com\"],\n minimum_protocol_version=cloudfront.SecurityPolicyProtocol.TLS_V1_2016,\n ssl_support_method=cloudfront.SSLMethod.SNI\n)", "version": "2" }, "csharp": { "source": "// Create a Distribution with a custom domain name and a minimum protocol version.\nBucket myBucket;\n\nnew Distribution(this, \"myDist\", new DistributionProps {\n DefaultBehavior = new BehaviorOptions { Origin = new S3Origin(myBucket) },\n DomainNames = new [] { \"www.example.com\" },\n MinimumProtocolVersion = SecurityPolicyProtocol.TLS_V1_2016,\n SslSupportMethod = SSLMethod.SNI\n});", "version": "1" }, "java": { "source": "// Create a Distribution with a custom domain name and a minimum protocol version.\nBucket myBucket;\n\nDistribution.Builder.create(this, \"myDist\")\n .defaultBehavior(BehaviorOptions.builder().origin(new S3Origin(myBucket)).build())\n .domainNames(List.of(\"www.example.com\"))\n .minimumProtocolVersion(SecurityPolicyProtocol.TLS_V1_2016)\n .sslSupportMethod(SSLMethod.SNI)\n .build();", "version": "1" }, "go": { "source": "// Create a Distribution with a custom domain name and a minimum protocol version.\nvar myBucket bucket\n\ncloudfront.NewDistribution(this, jsii.String(\"myDist\"), &distributionProps{\n\tdefaultBehavior: &behaviorOptions{\n\t\torigin: origins.NewS3Origin(myBucket),\n\t},\n\tdomainNames: []*string{\n\t\tjsii.String(\"www.example.com\"),\n\t},\n\tminimumProtocolVersion: cloudfront.securityPolicyProtocol_TLS_V1_2016,\n\tsslSupportMethod: cloudfront.sSLMethod_SNI,\n})", "version": "1" }, "$": { "source": "// Create a Distribution with a custom domain name and a minimum protocol version.\ndeclare const myBucket: s3.Bucket;\nnew cloudfront.Distribution(this, 'myDist', {\n defaultBehavior: { origin: new origins.S3Origin(myBucket) },\n domainNames: ['www.example.com'],\n minimumProtocolVersion: cloudfront.SecurityPolicyProtocol.TLS_V1_2016,\n sslSupportMethod: cloudfront.SSLMethod.SNI,\n});", "version": "0" } }, "location": { "api": { "api": "moduleReadme", "moduleFqn": "@aws-cdk/aws-cloudfront" }, "field": { "field": "markdown", "line": 117 } }, "didCompile": true, "fqnsReferenced": [ "@aws-cdk/aws-cloudfront-origins.S3Origin", "@aws-cdk/aws-cloudfront.BehaviorOptions", "@aws-cdk/aws-cloudfront.Distribution", "@aws-cdk/aws-cloudfront.DistributionProps", "@aws-cdk/aws-cloudfront.IOrigin", "@aws-cdk/aws-cloudfront.SSLMethod", "@aws-cdk/aws-cloudfront.SSLMethod#SNI", "@aws-cdk/aws-cloudfront.SecurityPolicyProtocol", "@aws-cdk/aws-cloudfront.SecurityPolicyProtocol#TLS_V1_2016", "@aws-cdk/aws-s3.IBucket", "constructs.Construct" ], "fullSource": "// Hoisted imports begin after !show marker below\n/// !show\n// Create a Distribution with a custom domain name and a minimum protocol version.\ndeclare const myBucket: s3.Bucket;\n/// !hide\n// Hoisted imports ended before !hide marker above\nimport { Construct } from 'constructs';\nimport { Duration, Stack } from '@aws-cdk/core';\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nimport * as origins from '@aws-cdk/aws-cloudfront-origins';\nimport * as s3 from '@aws-cdk/aws-s3';\nimport * as ec2 from '@aws-cdk/aws-ec2';\nimport * as elbv2 from '@aws-cdk/aws-elasticloadbalancingv2';\nimport * as lambda from '@aws-cdk/aws-lambda';\nimport * as path from 'path';\n\nclass Context extends Stack {\n constructor(scope: Construct, id: string) {\n super(scope, id);\n\n // Code snippet begins after !show marker below\n/// !show\n\nnew cloudfront.Distribution(this, 'myDist', {\n defaultBehavior: { origin: new origins.S3Origin(myBucket) },\n domainNames: ['www.example.com'],\n minimumProtocolVersion: cloudfront.SecurityPolicyProtocol.TLS_V1_2016,\n sslSupportMethod: cloudfront.SSLMethod.SNI,\n});\n/// !hide\n// Code snippet ended before !hide marker above\n }\n}\n", "syntaxKindCounter": { "10": 2, "75": 19, "104": 1, "130": 1, "153": 1, "169": 1, "192": 1, "193": 2, "194": 6, "197": 2, "225": 1, "226": 1, "242": 1, "243": 1, "281": 5, "290": 1 }, "fqnsFingerprint": "1badb07137657c48b51628c80bd1534a39625a11dc25c530b87d2b2a492c1ec3" }, "b31553e50f4abe07077cb3c2b53a0a33d2f29893a1cec5199b849a4ec7f1204d": { "translations": { "python": { "source": "# Create a Distribution with configured HTTP methods and viewer protocol policy of the cache.\n# my_bucket: s3.Bucket\n\nmy_web_distribution = cloudfront.Distribution(self, \"myDist\",\n default_behavior=cloudfront.BehaviorOptions(\n origin=origins.S3Origin(my_bucket),\n allowed_methods=cloudfront.AllowedMethods.ALLOW_ALL,\n viewer_protocol_policy=cloudfront.ViewerProtocolPolicy.REDIRECT_TO_HTTPS\n )\n)", "version": "2" }, "csharp": { "source": "// Create a Distribution with configured HTTP methods and viewer protocol policy of the cache.\nBucket myBucket;\n\nDistribution myWebDistribution = new Distribution(this, \"myDist\", new DistributionProps {\n DefaultBehavior = new BehaviorOptions {\n Origin = new S3Origin(myBucket),\n AllowedMethods = AllowedMethods.ALLOW_ALL,\n ViewerProtocolPolicy = ViewerProtocolPolicy.REDIRECT_TO_HTTPS\n }\n});", "version": "1" }, "java": { "source": "// Create a Distribution with configured HTTP methods and viewer protocol policy of the cache.\nBucket myBucket;\n\nDistribution myWebDistribution = Distribution.Builder.create(this, \"myDist\")\n .defaultBehavior(BehaviorOptions.builder()\n .origin(new S3Origin(myBucket))\n .allowedMethods(AllowedMethods.ALLOW_ALL)\n .viewerProtocolPolicy(ViewerProtocolPolicy.REDIRECT_TO_HTTPS)\n .build())\n .build();", "version": "1" }, "go": { "source": "// Create a Distribution with configured HTTP methods and viewer protocol policy of the cache.\nvar myBucket bucket\n\nmyWebDistribution := cloudfront.NewDistribution(this, jsii.String(\"myDist\"), &distributionProps{\n\tdefaultBehavior: &behaviorOptions{\n\t\torigin: origins.NewS3Origin(myBucket),\n\t\tallowedMethods: cloudfront.allowedMethods_ALLOW_ALL(),\n\t\tviewerProtocolPolicy: cloudfront.viewerProtocolPolicy_REDIRECT_TO_HTTPS,\n\t},\n})", "version": "1" }, "$": { "source": "// Create a Distribution with configured HTTP methods and viewer protocol policy of the cache.\ndeclare const myBucket: s3.Bucket;\nconst myWebDistribution = new cloudfront.Distribution(this, 'myDist', {\n defaultBehavior: {\n origin: new origins.S3Origin(myBucket),\n allowedMethods: cloudfront.AllowedMethods.ALLOW_ALL,\n viewerProtocolPolicy: cloudfront.ViewerProtocolPolicy.REDIRECT_TO_HTTPS,\n },\n});", "version": "0" } }, "location": { "api": { "api": "moduleReadme", "moduleFqn": "@aws-cdk/aws-cloudfront" }, "field": { "field": "markdown", "line": 137 } }, "didCompile": true, "fqnsReferenced": [ "@aws-cdk/aws-cloudfront-origins.S3Origin", "@aws-cdk/aws-cloudfront.AllowedMethods", "@aws-cdk/aws-cloudfront.AllowedMethods#ALLOW_ALL", "@aws-cdk/aws-cloudfront.BehaviorOptions", "@aws-cdk/aws-cloudfront.Distribution", "@aws-cdk/aws-cloudfront.DistributionProps", "@aws-cdk/aws-cloudfront.IOrigin", "@aws-cdk/aws-cloudfront.ViewerProtocolPolicy", "@aws-cdk/aws-cloudfront.ViewerProtocolPolicy#REDIRECT_TO_HTTPS", "@aws-cdk/aws-s3.IBucket", "constructs.Construct" ], "fullSource": "// Hoisted imports begin after !show marker below\n/// !show\n// Create a Distribution with configured HTTP methods and viewer protocol policy of the cache.\ndeclare const myBucket: s3.Bucket;\n/// !hide\n// Hoisted imports ended before !hide marker above\nimport { Construct } from 'constructs';\nimport { Duration, Stack } from '@aws-cdk/core';\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nimport * as origins from '@aws-cdk/aws-cloudfront-origins';\nimport * as s3 from '@aws-cdk/aws-s3';\nimport * as ec2 from '@aws-cdk/aws-ec2';\nimport * as elbv2 from '@aws-cdk/aws-elasticloadbalancingv2';\nimport * as lambda from '@aws-cdk/aws-lambda';\nimport * as path from 'path';\n\nclass Context extends Stack {\n constructor(scope: Construct, id: string) {\n super(scope, id);\n\n // Code snippet begins after !show marker below\n/// !show\n\nconst myWebDistribution = new cloudfront.Distribution(this, 'myDist', {\n defaultBehavior: {\n origin: new origins.S3Origin(myBucket),\n allowedMethods: cloudfront.AllowedMethods.ALLOW_ALL,\n viewerProtocolPolicy: cloudfront.ViewerProtocolPolicy.REDIRECT_TO_HTTPS,\n },\n});\n/// !hide\n// Code snippet ended before !hide marker above\n }\n}\n", "syntaxKindCounter": { "10": 1, "75": 19, "104": 1, "130": 1, "153": 1, "169": 1, "193": 2, "194": 6, "197": 2, "225": 2, "242": 2, "243": 2, "281": 4, "290": 1 }, "fqnsFingerprint": "eb34129f90b6a1efb99f90791403fa5b54e340292d54000a09d4cffef496766b" }, "ee481812c9e0ba0fa7206118893206e3c448d74d688840df077d04a7086a15df": { "translations": { "python": { "source": "# Add a behavior to a Distribution after initial creation.\n# my_bucket: s3.Bucket\n# my_web_distribution: cloudfront.Distribution\n\nmy_web_distribution.add_behavior(\"/images/*.jpg\", origins.S3Origin(my_bucket),\n viewer_protocol_policy=cloudfront.ViewerProtocolPolicy.REDIRECT_TO_HTTPS\n)", "version": "2" }, "csharp": { "source": "// Add a behavior to a Distribution after initial creation.\nBucket myBucket;\nDistribution myWebDistribution;\n\nmyWebDistribution.AddBehavior(\"/images/*.jpg\", new S3Origin(myBucket), new AddBehaviorOptions {\n ViewerProtocolPolicy = ViewerProtocolPolicy.REDIRECT_TO_HTTPS\n});", "version": "1" }, "java": { "source": "// Add a behavior to a Distribution after initial creation.\nBucket myBucket;\nDistribution myWebDistribution;\n\nmyWebDistribution.addBehavior(\"/images/*.jpg\", new S3Origin(myBucket), AddBehaviorOptions.builder()\n .viewerProtocolPolicy(ViewerProtocolPolicy.REDIRECT_TO_HTTPS)\n .build());", "version": "1" }, "go": { "source": "// Add a behavior to a Distribution after initial creation.\nvar myBucket bucket\nvar myWebDistribution distribution\n\nmyWebDistribution.addBehavior(jsii.String(\"/images/*.jpg\"), origins.NewS3Origin(myBucket), &addBehaviorOptions{\n\tviewerProtocolPolicy: cloudfront.viewerProtocolPolicy_REDIRECT_TO_HTTPS,\n})", "version": "1" }, "$": { "source": "// Add a behavior to a Distribution after initial creation.\ndeclare const myBucket: s3.Bucket;\ndeclare const myWebDistribution: cloudfront.Distribution;\nmyWebDistribution.addBehavior('/images/*.jpg', new origins.S3Origin(myBucket), {\n viewerProtocolPolicy: cloudfront.ViewerProtocolPolicy.REDIRECT_TO_HTTPS,\n});", "version": "0" } }, "location": { "api": { "api": "moduleReadme", "moduleFqn": "@aws-cdk/aws-cloudfront" }, "field": { "field": "markdown", "line": 153 } }, "didCompile": true, "fqnsReferenced": [ "@aws-cdk/aws-cloudfront-origins.S3Origin", "@aws-cdk/aws-cloudfront.AddBehaviorOptions", "@aws-cdk/aws-cloudfront.Distribution#addBehavior", "@aws-cdk/aws-cloudfront.IOrigin", "@aws-cdk/aws-cloudfront.ViewerProtocolPolicy", "@aws-cdk/aws-cloudfront.ViewerProtocolPolicy#REDIRECT_TO_HTTPS", "@aws-cdk/aws-s3.IBucket" ], "fullSource": "// Hoisted imports begin after !show marker below\n/// !show\n// Add a behavior to a Distribution after initial creation.\ndeclare const myBucket: s3.Bucket;\ndeclare const myWebDistribution: cloudfront.Distribution;\n/// !hide\n// Hoisted imports ended before !hide marker above\nimport { Construct } from 'constructs';\nimport { Duration, Stack } from '@aws-cdk/core';\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nimport * as origins from '@aws-cdk/aws-cloudfront-origins';\nimport * as s3 from '@aws-cdk/aws-s3';\nimport * as ec2 from '@aws-cdk/aws-ec2';\nimport * as elbv2 from '@aws-cdk/aws-elasticloadbalancingv2';\nimport * as lambda from '@aws-cdk/aws-lambda';\nimport * as path from 'path';\n\nclass Context extends Stack {\n constructor(scope: Construct, id: string) {\n super(scope, id);\n\n // Code snippet begins after !show marker below\n/// !show\n\nmyWebDistribution.addBehavior('/images/*.jpg', new origins.S3Origin(myBucket), {\n viewerProtocolPolicy: cloudfront.ViewerProtocolPolicy.REDIRECT_TO_HTTPS,\n});\n/// !hide\n// Code snippet ended before !hide marker above\n }\n}\n", "syntaxKindCounter": { "10": 1, "75": 15, "130": 2, "153": 2, "169": 2, "193": 1, "194": 4, "196": 1, "197": 1, "225": 2, "226": 1, "242": 2, "243": 2, "281": 1, "290": 1 }, "fqnsFingerprint": "7aa0f5446a2aeb26651360fcc6ddfab58615dd4571d6b9c705babe901c4d3b38" }, "3c209d169258e09da4dd7e751c2e8e6acfe3a0f7203538907d8ac233df5cdaed": { "translations": { "python": { "source": "# Create a Distribution with additional behaviors at creation time.\n# my_bucket: s3.Bucket\n\nbucket_origin = origins.S3Origin(my_bucket)\ncloudfront.Distribution(self, \"myDist\",\n default_behavior=cloudfront.BehaviorOptions(\n origin=bucket_origin,\n allowed_methods=cloudfront.AllowedMethods.ALLOW_ALL,\n viewer_protocol_policy=cloudfront.ViewerProtocolPolicy.REDIRECT_TO_HTTPS\n ),\n additional_behaviors={\n \"/images/*.jpg\": cloudfront.BehaviorOptions(\n origin=bucket_origin,\n viewer_protocol_policy=cloudfront.ViewerProtocolPolicy.REDIRECT_TO_HTTPS\n )\n }\n)", "version": "2" }, "csharp": { "source": "// Create a Distribution with additional behaviors at creation time.\nBucket myBucket;\n\nS3Origin bucketOrigin = new S3Origin(myBucket);\nnew Distribution(this, \"myDist\", new DistributionProps {\n DefaultBehavior = new BehaviorOptions {\n Origin = bucketOrigin,\n AllowedMethods = AllowedMethods.ALLOW_ALL,\n ViewerProtocolPolicy = ViewerProtocolPolicy.REDIRECT_TO_HTTPS\n },\n AdditionalBehaviors = new Dictionary<string, BehaviorOptions> {\n { \"/images/*.jpg\", new BehaviorOptions {\n Origin = bucketOrigin,\n ViewerProtocolPolicy = ViewerProtocolPolicy.REDIRECT_TO_HTTPS\n } }\n }\n});", "version": "1" }, "java": { "source": "// Create a Distribution with additional behaviors at creation time.\nBucket myBucket;\n\nS3Origin bucketOrigin = new S3Origin(myBucket);\nDistribution.Builder.create(this, \"myDist\")\n .defaultBehavior(BehaviorOptions.builder()\n .origin(bucketOrigin)\n .allowedMethods(AllowedMethods.ALLOW_ALL)\n .viewerProtocolPolicy(ViewerProtocolPolicy.REDIRECT_TO_HTTPS)\n .build())\n .additionalBehaviors(Map.of(\n \"/images/*.jpg\", BehaviorOptions.builder()\n .origin(bucketOrigin)\n .viewerProtocolPolicy(ViewerProtocolPolicy.REDIRECT_TO_HTTPS)\n .build()))\n .build();", "version": "1" }, "go": { "source": "// Create a Distribution with additional behaviors at creation time.\nvar myBucket bucket\n\nbucketOrigin := origins.NewS3Origin(myBucket)\ncloudfront.NewDistribution(this, jsii.String(\"myDist\"), &distributionProps{\n\tdefaultBehavior: &behaviorOptions{\n\t\torigin: bucketOrigin,\n\t\tallowedMethods: cloudfront.allowedMethods_ALLOW_ALL(),\n\t\tviewerProtocolPolicy: cloudfront.viewerProtocolPolicy_REDIRECT_TO_HTTPS,\n\t},\n\tadditionalBehaviors: map[string]*behaviorOptions{\n\t\t\"/images/*.jpg\": &behaviorOptions{\n\t\t\t\"origin\": bucketOrigin,\n\t\t\t\"viewerProtocolPolicy\": cloudfront.*viewerProtocolPolicy_REDIRECT_TO_HTTPS,\n\t\t},\n\t},\n})", "version": "1" }, "$": { "source": "// Create a Distribution with additional behaviors at creation time.\ndeclare const myBucket: s3.Bucket;\nconst bucketOrigin = new origins.S3Origin(myBucket);\nnew cloudfront.Distribution(this, 'myDist', {\n defaultBehavior: {\n origin: bucketOrigin,\n allowedMethods: cloudfront.AllowedMethods.ALLOW_ALL,\n viewerProtocolPolicy: cloudfront.ViewerProtocolPolicy.REDIRECT_TO_HTTPS,\n },\n additionalBehaviors: {\n '/images/*.jpg': {\n origin: bucketOrigin,\n viewerProtocolPolicy: cloudfront.ViewerProtocolPolicy.REDIRECT_TO_HTTPS,\n },\n },\n});", "version": "0" } }, "location": { "api": { "api": "moduleReadme", "moduleFqn": "@aws-cdk/aws-cloudfront" }, "field": { "field": "markdown", "line": 164 } }, "didCompile": true, "fqnsReferenced": [ "@aws-cdk/aws-cloudfront-origins.S3Origin", "@aws-cdk/aws-cloudfront.AllowedMethods", "@aws-cdk/aws-cloudfront.AllowedMethods#ALLOW_ALL", "@aws-cdk/aws-cloudfront.BehaviorOptions", "@aws-cdk/aws-cloudfront.Distribution", "@aws-cdk/aws-cloudfront.DistributionProps", "@aws-cdk/aws-cloudfront.IOrigin", "@aws-cdk/aws-cloudfront.ViewerProtocolPolicy", "@aws-cdk/aws-cloudfront.ViewerProtocolPolicy#REDIRECT_TO_HTTPS", "@aws-cdk/aws-s3.IBucket", "constructs.Construct" ], "fullSource": "// Hoisted imports begin after !show marker below\n/// !show\n// Create a Distribution with additional behaviors at creation time.\ndeclare const myBucket: s3.Bucket;\n/// !hide\n// Hoisted imports ended before !hide marker above\nimport { Construct } from 'constructs';\nimport { Duration, Stack } from '@aws-cdk/core';\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nimport * as origins from '@aws-cdk/aws-cloudfront-origins';\nimport * as s3 from '@aws-cdk/aws-s3';\nimport * as ec2 from '@aws-cdk/aws-ec2';\nimport * as elbv2 from '@aws-cdk/aws-elasticloadbalancingv2';\nimport * as lambda from '@aws-cdk/aws-lambda';\nimport * as path from 'path';\n\nclass Context extends Stack {\n constructor(scope: Construct, id: string) {\n super(scope, id);\n\n // Code snippet begins after !show marker below\n/// !show\n\nconst bucketOrigin = new origins.S3Origin(myBucket);\nnew cloudfront.Distribution(this, 'myDist', {\n defaultBehavior: {\n origin: bucketOrigin,\n allowedMethods: cloudfront.AllowedMethods.ALLOW_ALL,\n viewerProtocolPolicy: cloudfront.ViewerProtocolPolicy.REDIRECT_TO_HTTPS,\n },\n additionalBehaviors: {\n '/images/*.jpg': {\n origin: bucketOrigin,\n viewerProtocolPolicy: cloudfront.ViewerProtocolPolicy.REDIRECT_TO_HTTPS,\n },\n },\n});\n/// !hide\n// Code snippet ended before !hide marker above\n }\n}\n", "syntaxKindCounter": { "10": 2, "75": 27, "104": 1, "130": 1, "153": 1, "169": 1, "193": 4, "194": 8, "197": 2, "225": 2, "226": 1, "242": 2, "243": 2, "281": 8, "290": 1 }, "fqnsFingerprint": "eb34129f90b6a1efb99f90791403fa5b54e340292d54000a09d4cffef496766b" }, "160ef535872897af2c865f7d27f5730b5c555eb9d7fa69432177420b52092196": { "translations": { "python": { "source": "# Using an existing cache policy for a Distribution\n# bucket_origin: origins.S3Origin\n\ncloudfront.Distribution(self, \"myDistManagedPolicy\",\n default_behavior=cloudfront.BehaviorOptions(\n origin=bucket_origin,\n cache_policy=cloudfront.CachePolicy.CACHING_OPTIMIZED\n )\n)", "version": "2" }, "csharp": { "source": "// Using an existing cache policy for a Distribution\nS3Origin bucketOrigin;\n\nnew Distribution(this, \"myDistManagedPolicy\", new DistributionProps {\n DefaultBehavior = new BehaviorOptions {\n Origin = bucketOrigin,\n CachePolicy = CachePolicy.CACHING_OPTIMIZED\n }\n});", "version": "1" }, "java": { "source": "// Using an existing cache policy for a Distribution\nS3Origin bucketOrigin;\n\nDistribution.Builder.create(this, \"myDistManagedPolicy\")\n .defaultBehavior(BehaviorOptions.builder()\n .origin(bucketOrigin)\n .cachePolicy(CachePolicy.CACHING_OPTIMIZED)\n .build())\n .build();", "version": "1" }, "go": { "source": "// Using an existing cache policy for a Distribution\nvar bucketOrigin s3Origin\n\ncloudfront.NewDistribution(this, jsii.String(\"myDistManagedPolicy\"), &distributionProps{\n\tdefaultBehavior: &behaviorOptions{\n\t\torigin: bucketOrigin,\n\t\tcachePolicy: cloudfront.cachePolicy_CACHING_OPTIMIZED(),\n\t},\n})", "version": "1" }, "$": { "source": "// Using an existing cache policy for a Distribution\ndeclare const bucketOrigin: origins.S3Origin;\nnew cloudfront.Distribution(this, 'myDistManagedPolicy', {\n defaultBehavior: {\n origin: bucketOrigin,\n cachePolicy: cloudfront.CachePolicy.CACHING_OPTIMIZED,\n },\n});", "version": "0" } }, "location": { "api": { "api": "moduleReadme", "moduleFqn": "@aws-cdk/aws-cloudfront" }, "field": { "field": "markdown", "line": 191 } }, "didCompile": true, "fqnsReferenced": [ "@aws-cdk/aws-cloudfront.BehaviorOptions", "@aws-cdk/aws-cloudfront.CachePolicy", "@aws-cdk/aws-cloudfront.CachePolicy#CACHING_OPTIMIZED", "@aws-cdk/aws-cloudfront.Distribution", "@aws-cdk/aws-cloudfront.DistributionProps", "@aws-cdk/aws-cloudfront.ICachePolicy", "@aws-cdk/aws-cloudfront.IOrigin", "constructs.Construct" ], "fullSource": "// Hoisted imports begin after !show marker below\n/// !show\n// Using an existing cache policy for a Distribution\ndeclare const bucketOrigin: origins.S3Origin;\n/// !hide\n// Hoisted imports ended before !hide marker above\nimport { Construct } from 'constructs';\nimport { Duration, Stack } from '@aws-cdk/core';\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nimport * as origins from '@aws-cdk/aws-cloudfront-origins';\nimport * as s3 from '@aws-cdk/aws-s3';\nimport * as ec2 from '@aws-cdk/aws-ec2';\nimport * as elbv2 from '@aws-cdk/aws-elasticloadbalancingv2';\nimport * as lambda from '@aws-cdk/aws-lambda';\nimport * as path from 'path';\n\nclass Context extends Stack {\n constructor(scope: Construct, id: string) {\n super(scope, id);\n\n // Code snippet begins after !show marker below\n/// !show\n\nnew cloudfront.Distribution(this, 'myDistManagedPolicy', {\n defaultBehavior: {\n origin: bucketOrigin,\n cachePolicy: cloudfront.CachePolicy.CACHING_OPTIMIZED,\n },\n});\n/// !hide\n// Code snippet ended before !hide marker above\n }\n}\n", "syntaxKindCounter": { "10": 1, "75": 12, "104": 1, "130": 1, "153": 1, "169": 1, "193": 2, "194": 3, "197": 1, "225": 1, "226": 1, "242": 1, "243": 1, "281": 3, "290": 1 }, "fqnsFingerprint": "4635af00af7389ce03416e9ddc8233ae733762c2a958953ab04f5b5958b2fe75" }, "08d6d241625c0a27be8c3d900148462ef0cc763ad7b076753f787479b5f95625": { "translations": { "python": { "source": "# Creating a custom cache policy for a Distribution -- all parameters optional\n# bucket_origin: origins.S3Origin\n\nmy_cache_policy = cloudfront.CachePolicy(self, \"myCachePolicy\",\n cache_policy_name=\"MyPolicy\",\n comment=\"A default policy\",\n default_ttl=Duration.days(2),\n min_ttl=Duration.minutes(1),\n max_ttl=Duration.days(10),\n cookie_behavior=cloudfront.CacheCookieBehavior.all(),\n header_behavior=cloudfront.CacheHeaderBehavior.allow_list(\"X-CustomHeader\"),\n query_string_behavior=cloudfront.CacheQueryStringBehavior.deny_list(\"username\"),\n enable_accept_encoding_gzip=True,\n enable_accept_encoding_brotli=True\n)\ncloudfront.Distribution(self, \"myDistCustomPolicy\",\n default_behavior=cloudfront.BehaviorOptions(\n origin=bucket_origin,\n cache_policy=my_cache_policy\n )\n)", "version": "2" }, "csharp": { "source": "// Creating a custom cache policy for a Distribution -- all parameters optional\nS3Origin bucketOrigin;\n\nCachePolicy myCachePolicy = new CachePolicy(this, \"myCachePolicy\", new CachePolicyProps {\n CachePolicyName = \"MyPolicy\",\n Comment = \"A default policy\",\n DefaultTtl = Duration.Days(2),\n MinTtl = Duration.Minutes(1),\n MaxTtl = Duration.Days(10),\n CookieBehavior = CacheCookieBehavior.All(),\n HeaderBehavior = CacheHeaderBehavior.AllowList(\"X-CustomHeader\"),\n QueryStringBehavior = CacheQueryStringBehavior.DenyList(\"username\"),\n EnableAcceptEncodingGzip = true,\n EnableAcceptEncodingBrotli = true\n});\nnew Distribution(this, \"myDistCustomPolicy\", new DistributionProps {\n DefaultBehavior = new BehaviorOptions {\n Origin = bucketOrigin,\n CachePolicy = myCachePolicy\n }\n});", "version": "1" }, "java": { "source": "// Creating a custom cache policy for a Distribution -- all parameters optional\nS3Origin bucketOrigin;\n\nCachePolicy myCachePolicy = CachePolicy.Builder.create(this, \"myCachePolicy\")\n .cachePolicyName(\"MyPolicy\")\n .comment(\"A default policy\")\n .defaultTtl(Duration.days(2))\n .minTtl(Duration.minutes(1))\n .maxTtl(Duration.days(10))\n .cookieBehavior(CacheCookieBehavior.all())\n .headerBehavior(CacheHeaderBehavior.allowList(\"X-CustomHeader\"))\n .queryStringBehavior(CacheQueryStringBehavior.denyList(\"username\"))\n .enableAcceptEncodingGzip(true)\n .enableAcceptEncodingBrotli(true)\n .build();\nDistribution.Builder.create(this, \"myDistCustomPolicy\")\n .defaultBehavior(BehaviorOptions.builder()\n .origin(bucketOrigin)\n .cachePolicy(myCachePolicy)\n .build())\n .build();", "version": "1" }, "go": { "source": "// Creating a custom cache policy for a Distribution -- all parameters optional\nvar bucketOrigin s3Origin\n\nmyCachePolicy := cloudfront.NewCachePolicy(this, jsii.String(\"myCachePolicy\"), &cachePolicyProps{\n\tcachePolicyName: jsii.String(\"MyPolicy\"),\n\tcomment: jsii.String(\"A default policy\"),\n\tdefaultTtl: *awscdkcore.Duration.days(jsii.Number(2)),\n\tminTtl: *awscdkcore.Duration.minutes(jsii.Number(1)),\n\tmaxTtl: *awscdkcore.Duration.days(jsii.Number(10)),\n\tcookieBehavior: cloudfront.cacheCookieBehavior.all(),\n\theaderBehavior: cloudfront.cacheHeaderBehavior.allowList(jsii.String(\"X-CustomHeader\")),\n\tqueryStringBehavior: cloudfront.cacheQueryStringBehavior.denyList(jsii.String(\"username\")),\n\tenableAcceptEncodingGzip: jsii.Boolean(true),\n\tenableAcceptEncodingBrotli: jsii.Boolean(true),\n})\ncloudfront.NewDistribution(this, jsii.String(\"myDistCustomPolicy\"), &distributionProps{\n\tdefaultBehavior: &behaviorOptions{\n\t\torigin: bucketOrigin,\n\t\tcachePolicy: myCachePolicy,\n\t},\n})", "version": "1" }, "$": { "source": "// Creating a custom cache policy for a Distribution -- all parameters optional\ndeclare const bucketOrigin: origins.S3Origin;\nconst myCachePolicy = new cloudfront.CachePolicy(this, 'myCachePolicy', {\n cachePolicyName: 'MyPolicy',\n comment: 'A default policy',\n defaultTtl: Duration.days(2),\n minTtl: Duration.minutes(1),\n maxTtl: Duration.days(10),\n cookieBehavior: cloudfront.CacheCookieBehavior.all(),\n headerBehavior: cloudfront.CacheHeaderBehavior.allowList('X-CustomHeader'),\n queryStringBehavior: cloudfront.CacheQueryStringBehavior.denyList('username'),\n enableAcceptEncodingGzip: true,\n enableAcceptEncodingBrotli: true,\n});\nnew cloudfront.Distribution(this, 'myDistCustomPolicy', {\n defaultBehavior: {\n origin: bucketOrigin,\n cachePolicy: myCachePolicy,\n },\n});", "version": "0" } }, "location": { "api": { "api": "moduleReadme", "moduleFqn": "@aws-cdk/aws-cloudfront" }, "field": { "field": "markdown", "line": 202 } }, "didCompile": true, "fqnsReferenced": [ "@aws-cdk/aws-cloudfront.BehaviorOptions", "@aws-cdk/aws-cloudfront.CacheCookieBehavior", "@aws-cdk/aws-cloudfront.CacheCookieBehavior#all", "@aws-cdk/aws-cloudfront.CacheHeaderBehavior", "@aws-cdk/aws-cloudfront.CacheHeaderBehavior#allowList", "@aws-cdk/aws-cloudfront.CachePolicy", "@aws-cdk/aws-cloudfront.CachePolicyProps", "@aws-cdk/aws-cloudfront.CacheQueryStringBehavior", "@aws-cdk/aws-cloudfront.CacheQueryStringBehavior#denyList", "@aws-cdk/aws-cloudfront.Distribution", "@aws-cdk/aws-cloudfront.DistributionProps", "@aws-cdk/aws-cloudfront.ICachePolicy", "@aws-cdk/aws-cloudfront.IOrigin", "@aws-cdk/core.Duration", "@aws-cdk/core.Duration