/// <summary> /// Create a new distribution with tags. /// </summary> /// <param name="request">Container for the necessary parameters to execute the CreateDistributionWithTags service method.</param> /// /// <returns>The response from the CreateDistributionWithTags service method, as returned by CloudFront.</returns> /// <exception cref="Amazon.CloudFront.Model.AccessDeniedException"> /// Access denied. /// </exception> /// <exception cref="Amazon.CloudFront.Model.CNAMEAlreadyExistsException"> /// /// </exception> /// <exception cref="Amazon.CloudFront.Model.DistributionAlreadyExistsException"> /// The caller reference you attempted to create the distribution with is associated with /// another distribution. /// </exception> /// <exception cref="Amazon.CloudFront.Model.InconsistentQuantitiesException"> /// The value of <code>Quantity</code> and the size of <code>Items</code> do not match. /// </exception> /// <exception cref="Amazon.CloudFront.Model.InvalidArgumentException"> /// The argument is invalid. /// </exception> /// <exception cref="Amazon.CloudFront.Model.InvalidDefaultRootObjectException"> /// The default root object file name is too big or contains an invalid character. /// </exception> /// <exception cref="Amazon.CloudFront.Model.InvalidErrorCodeException"> /// /// </exception> /// <exception cref="Amazon.CloudFront.Model.InvalidForwardCookiesException"> /// Your request contains forward cookies option which doesn't match with the expectation /// for the <code>whitelisted</code> list of cookie names. Either list of cookie names /// has been specified when not allowed or list of cookie names is missing when expected. /// </exception> /// <exception cref="Amazon.CloudFront.Model.InvalidGeoRestrictionParameterException"> /// /// </exception> /// <exception cref="Amazon.CloudFront.Model.InvalidHeadersForS3OriginException"> /// /// </exception> /// <exception cref="Amazon.CloudFront.Model.InvalidLambdaFunctionAssociationException"> /// The specified Lambda function association is invalid. /// </exception> /// <exception cref="Amazon.CloudFront.Model.InvalidLocationCodeException"> /// /// </exception> /// <exception cref="Amazon.CloudFront.Model.InvalidMinimumProtocolVersionException"> /// /// </exception> /// <exception cref="Amazon.CloudFront.Model.InvalidOriginAccessIdentityException"> /// The origin access identity is not valid or doesn't exist. /// </exception> /// <exception cref="Amazon.CloudFront.Model.InvalidOriginException"> /// The Amazon S3 origin server specified does not refer to a valid Amazon S3 bucket. /// </exception> /// <exception cref="Amazon.CloudFront.Model.InvalidProtocolSettingsException"> /// You cannot specify SSLv3 as the minimum protocol version if you only want to support /// only clients that support Server Name Indication (SNI). /// </exception> /// <exception cref="Amazon.CloudFront.Model.InvalidQueryStringParametersException"> /// /// </exception> /// <exception cref="Amazon.CloudFront.Model.InvalidRelativePathException"> /// The relative path is too big, is not URL-encoded, or does not begin with a slash (/). /// </exception> /// <exception cref="Amazon.CloudFront.Model.InvalidRequiredProtocolException"> /// This operation requires the HTTPS protocol. Ensure that you specify the HTTPS protocol /// in your request, or omit the <code>RequiredProtocols</code> element from your distribution /// configuration. /// </exception> /// <exception cref="Amazon.CloudFront.Model.InvalidResponseCodeException"> /// /// </exception> /// <exception cref="Amazon.CloudFront.Model.InvalidTaggingException"> /// /// </exception> /// <exception cref="Amazon.CloudFront.Model.InvalidTTLOrderException"> /// /// </exception> /// <exception cref="Amazon.CloudFront.Model.InvalidViewerCertificateException"> /// /// </exception> /// <exception cref="Amazon.CloudFront.Model.InvalidWebACLIdException"> /// /// </exception> /// <exception cref="Amazon.CloudFront.Model.MissingBodyException"> /// This operation requires a body. Ensure that the body is present and the Content-Type /// header is set. /// </exception> /// <exception cref="Amazon.CloudFront.Model.NoSuchOriginException"> /// No origin exists with the specified <code>Origin Id</code>. /// </exception> /// <exception cref="Amazon.CloudFront.Model.TooManyCacheBehaviorsException"> /// You cannot create more cache behaviors for the distribution. /// </exception> /// <exception cref="Amazon.CloudFront.Model.TooManyCertificatesException"> /// You cannot create anymore custom SSL/TLS certificates. /// </exception> /// <exception cref="Amazon.CloudFront.Model.TooManyCookieNamesInWhiteListException"> /// Your request contains more cookie names in the whitelist than are allowed per cache /// behavior. /// </exception> /// <exception cref="Amazon.CloudFront.Model.TooManyDistributionCNAMEsException"> /// Your request contains more CNAMEs than are allowed per distribution. /// </exception> /// <exception cref="Amazon.CloudFront.Model.TooManyDistributionsException"> /// Processing your request would cause you to exceed the maximum number of distributions /// allowed. /// </exception> /// <exception cref="Amazon.CloudFront.Model.TooManyDistributionsWithLambdaAssociationsException"> /// Processing your request would cause the maximum number of distributions with Lambda /// function associations per owner to be exceeded. /// </exception> /// <exception cref="Amazon.CloudFront.Model.TooManyHeadersInForwardedValuesException"> /// /// </exception> /// <exception cref="Amazon.CloudFront.Model.TooManyLambdaFunctionAssociationsException"> /// Your request contains more Lambda function associations than are allowed per distribution. /// </exception> /// <exception cref="Amazon.CloudFront.Model.TooManyOriginCustomHeadersException"> /// /// </exception> /// <exception cref="Amazon.CloudFront.Model.TooManyOriginsException"> /// You cannot create more origins for the distribution. /// </exception> /// <exception cref="Amazon.CloudFront.Model.TooManyQueryStringParametersException"> /// /// </exception> /// <exception cref="Amazon.CloudFront.Model.TooManyTrustedSignersException"> /// Your request contains more trusted signers than are allowed per distribution. /// </exception> /// <exception cref="Amazon.CloudFront.Model.TrustedSignerDoesNotExistException"> /// One or more of your trusted signers do not exist. /// </exception> public CreateDistributionWithTagsResponse CreateDistributionWithTags(CreateDistributionWithTagsRequest request) { var marshaller = new CreateDistributionWithTagsRequestMarshaller(); var unmarshaller = CreateDistributionWithTagsResponseUnmarshaller.Instance; return Invoke<CreateDistributionWithTagsRequest,CreateDistributionWithTagsResponse>(request, marshaller, unmarshaller); }
/// <summary> /// Initiates the asynchronous execution of the CreateDistributionWithTags operation. /// </summary> /// /// <param name="request">Container for the necessary parameters to execute the CreateDistributionWithTags operation on AmazonCloudFrontClient.</param> /// <param name="callback">An AsyncCallback delegate that is invoked when the operation completes.</param> /// <param name="state">A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property.</param> /// /// <returns>An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndCreateDistributionWithTags /// operation.</returns> public IAsyncResult BeginCreateDistributionWithTags(CreateDistributionWithTagsRequest request, AsyncCallback callback, object state) { var marshaller = new CreateDistributionWithTagsRequestMarshaller(); var unmarshaller = CreateDistributionWithTagsResponseUnmarshaller.Instance; return BeginInvoke<CreateDistributionWithTagsRequest>(request, marshaller, unmarshaller, callback, state); }
/// <summary> /// Initiates the asynchronous execution of the CreateDistributionWithTags operation. /// </summary> /// /// <param name="request">Container for the necessary parameters to execute the CreateDistributionWithTags operation.</param> /// <param name="cancellationToken"> /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// </param> /// <returns>The task object representing the asynchronous operation.</returns> public Task<CreateDistributionWithTagsResponse> CreateDistributionWithTagsAsync(CreateDistributionWithTagsRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var marshaller = new CreateDistributionWithTagsRequestMarshaller(); var unmarshaller = CreateDistributionWithTagsResponseUnmarshaller.Instance; return InvokeAsync<CreateDistributionWithTagsRequest,CreateDistributionWithTagsResponse>(request, marshaller, unmarshaller, cancellationToken); }