updateDistribution2016_11_25 method

Future<UpdateDistributionResult> updateDistribution2016_11_25({
  1. required DistributionConfig distributionConfig,
  2. required String id,
  3. String? ifMatch,
})

Update a distribution.

May throw AccessDenied. May throw CNAMEAlreadyExists. May throw IllegalUpdate. May throw InvalidIfMatchVersion. May throw MissingBody. May throw NoSuchDistribution. May throw PreconditionFailed. May throw TooManyDistributionCNAMEs. May throw InvalidDefaultRootObject. May throw InvalidRelativePath. May throw InvalidErrorCode. May throw InvalidResponseCode. May throw InvalidArgument. May throw InvalidOriginAccessIdentity. May throw TooManyTrustedSigners. May throw TrustedSignerDoesNotExist. May throw InvalidViewerCertificate. May throw InvalidMinimumProtocolVersion. May throw InvalidRequiredProtocol. May throw NoSuchOrigin. May throw TooManyOrigins. May throw TooManyCacheBehaviors. May throw TooManyCookieNamesInWhiteList. May throw InvalidForwardCookies. May throw TooManyHeadersInForwardedValues. May throw InvalidHeadersForS3Origin. May throw InconsistentQuantities. May throw TooManyCertificates. May throw InvalidLocationCode. May throw InvalidGeoRestrictionParameter. May throw InvalidTTLOrder. May throw InvalidWebACLId. May throw TooManyOriginCustomHeaders. May throw TooManyQueryStringParameters. May throw InvalidQueryStringParameters. May throw TooManyDistributionsWithLambdaAssociations. May throw TooManyLambdaFunctionAssociations. May throw InvalidLambdaFunctionAssociation.

Parameter distributionConfig : The distribution's configuration information.

Parameter id : The distribution's id.

Parameter ifMatch : The value of the ETag header that you received when retrieving the distribution's configuration. For example: E2QWRUHAPOMQZL.

Implementation

Future<UpdateDistributionResult> updateDistribution2016_11_25({
  required DistributionConfig distributionConfig,
  required String id,
  String? ifMatch,
}) async {
  ArgumentError.checkNotNull(distributionConfig, 'distributionConfig');
  ArgumentError.checkNotNull(id, 'id');
  final headers = <String, String>{
    if (ifMatch != null) 'If-Match': ifMatch.toString(),
  };
  final $result = await _protocol.sendRaw(
    method: 'PUT',
    requestUri: '/2016-11-25/distribution/${Uri.encodeComponent(id)}/config',
    headers: headers,
    payload: distributionConfig.toXml('DistributionConfig'),
    exceptionFnMap: _exceptionFns,
  );
  final $elem = await _s.xmlFromResponse($result);
  return UpdateDistributionResult(
    distribution: Distribution.fromXml($elem),
    eTag: _s.extractHeaderStringValue($result.headers, 'ETag'),
  );
}