createDistribution method
- required DistributionConfig distributionConfig,
Creates a CloudFront distribution.
May throw AccessDenied.
May throw CNAMEAlreadyExists.
May throw ContinuousDeploymentPolicyInUse.
May throw DistributionAlreadyExists.
May throw EntityLimitExceeded.
May throw EntityNotFound.
May throw IllegalFieldLevelEncryptionConfigAssociationWithCacheBehavior.
May throw IllegalOriginAccessConfiguration.
May throw InconsistentQuantities.
May throw InvalidArgument.
May throw InvalidDefaultRootObject.
May throw InvalidDomainNameForOriginAccessControl.
May throw InvalidErrorCode.
May throw InvalidForwardCookies.
May throw InvalidFunctionAssociation.
May throw InvalidGeoRestrictionParameter.
May throw InvalidHeadersForS3Origin.
May throw InvalidLambdaFunctionAssociation.
May throw InvalidLocationCode.
May throw InvalidMinimumProtocolVersion.
May throw InvalidOrigin.
May throw InvalidOriginAccessControl.
May throw InvalidOriginAccessIdentity.
May throw InvalidOriginKeepaliveTimeout.
May throw InvalidOriginReadTimeout.
May throw InvalidProtocolSettings.
May throw InvalidQueryStringParameters.
May throw InvalidRelativePath.
May throw InvalidRequiredProtocol.
May throw InvalidResponseCode.
May throw InvalidTTLOrder.
May throw InvalidViewerCertificate.
May throw InvalidWebACLId.
May throw MissingBody.
May throw NoSuchCachePolicy.
May throw NoSuchContinuousDeploymentPolicy.
May throw NoSuchFieldLevelEncryptionConfig.
May throw NoSuchOrigin.
May throw NoSuchOriginRequestPolicy.
May throw NoSuchRealtimeLogConfig.
May throw NoSuchResponseHeadersPolicy.
May throw RealtimeLogConfigOwnerMismatch.
May throw TooManyCacheBehaviors.
May throw TooManyCertificates.
May throw TooManyCookieNamesInWhiteList.
May throw TooManyDistributionCNAMEs.
May throw TooManyDistributions.
May throw TooManyDistributionsAssociatedToCachePolicy.
May throw TooManyDistributionsAssociatedToFieldLevelEncryptionConfig.
May throw TooManyDistributionsAssociatedToKeyGroup.
May throw TooManyDistributionsAssociatedToOriginAccessControl.
May throw TooManyDistributionsAssociatedToOriginRequestPolicy.
May throw TooManyDistributionsAssociatedToResponseHeadersPolicy.
May throw TooManyDistributionsWithFunctionAssociations.
May throw TooManyDistributionsWithLambdaAssociations.
May throw TooManyDistributionsWithSingleFunctionARN.
May throw TooManyFunctionAssociations.
May throw TooManyHeadersInForwardedValues.
May throw TooManyKeyGroupsAssociatedToDistribution.
May throw TooManyLambdaFunctionAssociations.
May throw TooManyOriginCustomHeaders.
May throw TooManyOriginGroupsPerDistribution.
May throw TooManyOrigins.
May throw TooManyQueryStringParameters.
May throw TooManyTrustedSigners.
May throw TrustedKeyGroupDoesNotExist.
May throw TrustedSignerDoesNotExist.
Parameter distributionConfig :
The distribution's configuration information.
Implementation
Future<CreateDistributionResult> createDistribution({
required DistributionConfig distributionConfig,
}) async {
final $result = await _protocol.sendRaw(
method: 'POST',
requestUri: '/2020-05-31/distribution',
payload: distributionConfig.toXml('DistributionConfig'),
exceptionFnMap: _exceptionFns,
);
final $elem = await _s.xmlFromResponse($result);
return CreateDistributionResult(
distribution: Distribution.fromXml($elem),
eTag: _s.extractHeaderStringValue($result.headers, 'ETag'),
location: _s.extractHeaderStringValue($result.headers, 'Location'),
);
}