/// <summary> /// Adds one or more tags to a stream. A <i>tag</i> is a key-value pair (the value is /// optional) that you can define and assign to AWS resources. If you specify a tag that /// already exists, the tag value is replaced with the value that you specify in the request. /// For more information, see <a href="http://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html">Using /// Cost Allocation Tags</a> in the <i>AWS Billing and Cost Management User Guide</i>. /// /// /// /// <para> /// You must provide either the <code>StreamName</code> or the <code>StreamARN</code>. /// </para> /// /// <para> /// This operation requires permission for the <code>KinesisVideo:TagStream</code> action. /// </para> /// /// <para> /// Kinesis video streams support up to 50 tags. /// </para> /// </summary> /// <param name="request">Container for the necessary parameters to execute the TagStream service method.</param> /// /// <returns>The response from the TagStream service method, as returned by KinesisVideo.</returns> /// <exception cref="Amazon.KinesisVideo.Model.ClientLimitExceededException"> /// Kinesis Video Streams has throttled the request because you have exceeded the limit /// of allowed client calls. Try making the call later. /// </exception> /// <exception cref="Amazon.KinesisVideo.Model.InvalidArgumentException"> /// The value for this input parameter is invalid. /// </exception> /// <exception cref="Amazon.KinesisVideo.Model.InvalidResourceFormatException"> /// The format of the <code>StreamARN</code> is invalid. /// </exception> /// <exception cref="Amazon.KinesisVideo.Model.NotAuthorizedException"> /// The caller is not authorized to perform this operation. /// </exception> /// <exception cref="Amazon.KinesisVideo.Model.ResourceNotFoundException"> /// Amazon Kinesis Video Streams can't find the stream that you specified. /// </exception> /// <exception cref="Amazon.KinesisVideo.Model.TagsPerResourceExceededLimitException"> /// You have exceeded the limit of tags that you can associate with the resource. Kinesis /// video streams support up to 50 tags. /// </exception> /// <seealso href="http://docs.aws.amazon.com/goto/WebAPI/kinesisvideo-2017-09-30/TagStream">REST API Reference for TagStream Operation</seealso> public virtual TagStreamResponse TagStream(TagStreamRequest request) { var marshaller = new TagStreamRequestMarshaller(); var unmarshaller = TagStreamResponseUnmarshaller.Instance; return(Invoke <TagStreamRequest, TagStreamResponse>(request, marshaller, unmarshaller)); }
public void TagStreamMarshallTest() { var operation = service_model.FindOperation("TagStream"); var request = InstantiateClassGenerator.Execute <TagStreamRequest>(); var marshaller = new TagStreamRequestMarshaller(); var internalRequest = marshaller.Marshall(request); TestTools.RequestValidator.Validate("TagStream", request, internalRequest, service_model); var webResponse = new WebResponseData { Headers = { { "x-amzn-RequestId", Guid.NewGuid().ToString() }, { "x-amz-crc32", "0" } } }; var payloadResponse = new JsonSampleGenerator(service_model, operation.ResponseStructure).Execute(); webResponse.Headers["Content-Length"] = UTF8Encoding.UTF8.GetBytes(payloadResponse).Length.ToString(); var context = new JsonUnmarshallerContext(Utils.CreateStreamFromString(payloadResponse), false, webResponse); ResponseUnmarshaller unmarshaller = TagStreamResponseUnmarshaller.Instance; var response = unmarshaller.Unmarshall(context) as TagStreamResponse; InstantiateClassGenerator.ValidateObjectFullyInstantiated(response); }
/// <summary> /// Initiates the asynchronous execution of the TagStream operation. /// </summary> /// /// <param name="request">Container for the necessary parameters to execute the TagStream 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> /// <seealso href="http://docs.aws.amazon.com/goto/WebAPI/kinesisvideo-2017-09-30/TagStream">REST API Reference for TagStream Operation</seealso> public virtual Task <TagStreamResponse> TagStreamAsync(TagStreamRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var marshaller = new TagStreamRequestMarshaller(); var unmarshaller = TagStreamResponseUnmarshaller.Instance; return(InvokeAsync <TagStreamRequest, TagStreamResponse>(request, marshaller, unmarshaller, cancellationToken)); }