/* * Copyright 2010-2014 Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. */ /* * Do not modify this file. This file is generated from the firehose-2015-08-04.normal.json service model. */ using System; using System.Collections.Generic; using System.Net; using Amazon.KinesisFirehose.Model; using Amazon.KinesisFirehose.Model.Internal.MarshallTransformations; using Amazon.KinesisFirehose.Internal; using Amazon.Runtime; using Amazon.Runtime.Internal; using Amazon.Runtime.Internal.Auth; using Amazon.Runtime.Internal.Transform; namespace Amazon.KinesisFirehose { /// /// Implementation for accessing KinesisFirehose /// /// Amazon Kinesis Data Firehose API Reference /// /// Amazon Kinesis Data Firehose is a fully managed service that delivers real-time streaming /// data to destinations such as Amazon Simple Storage Service (Amazon S3), Amazon Elasticsearch /// Service (Amazon ES), Amazon Redshift, and Splunk. /// /// public partial class AmazonKinesisFirehoseClient : AmazonServiceClient, IAmazonKinesisFirehose { private static IServiceMetadata serviceMetadata = new AmazonKinesisFirehoseMetadata(); #region Constructors /// /// Constructs AmazonKinesisFirehoseClient with AWS Credentials /// /// AWS Credentials public AmazonKinesisFirehoseClient(AWSCredentials credentials) : this(credentials, new AmazonKinesisFirehoseConfig()) { } /// /// Constructs AmazonKinesisFirehoseClient with AWS Credentials /// /// AWS Credentials /// The region to connect. public AmazonKinesisFirehoseClient(AWSCredentials credentials, RegionEndpoint region) : this(credentials, new AmazonKinesisFirehoseConfig{RegionEndpoint = region}) { } /// /// Constructs AmazonKinesisFirehoseClient with AWS Credentials and an /// AmazonKinesisFirehoseClient Configuration object. /// /// AWS Credentials /// The AmazonKinesisFirehoseClient Configuration Object public AmazonKinesisFirehoseClient(AWSCredentials credentials, AmazonKinesisFirehoseConfig clientConfig) : base(credentials, clientConfig) { } /// /// Constructs AmazonKinesisFirehoseClient with AWS Access Key ID and AWS Secret Key /// /// AWS Access Key ID /// AWS Secret Access Key public AmazonKinesisFirehoseClient(string awsAccessKeyId, string awsSecretAccessKey) : this(awsAccessKeyId, awsSecretAccessKey, new AmazonKinesisFirehoseConfig()) { } /// /// Constructs AmazonKinesisFirehoseClient with AWS Access Key ID and AWS Secret Key /// /// AWS Access Key ID /// AWS Secret Access Key /// The region to connect. public AmazonKinesisFirehoseClient(string awsAccessKeyId, string awsSecretAccessKey, RegionEndpoint region) : this(awsAccessKeyId, awsSecretAccessKey, new AmazonKinesisFirehoseConfig() {RegionEndpoint=region}) { } /// /// Constructs AmazonKinesisFirehoseClient with AWS Access Key ID, AWS Secret Key and an /// AmazonKinesisFirehoseClient Configuration object. /// /// AWS Access Key ID /// AWS Secret Access Key /// The AmazonKinesisFirehoseClient Configuration Object public AmazonKinesisFirehoseClient(string awsAccessKeyId, string awsSecretAccessKey, AmazonKinesisFirehoseConfig clientConfig) : base(awsAccessKeyId, awsSecretAccessKey, clientConfig) { } /// /// Constructs AmazonKinesisFirehoseClient with AWS Access Key ID and AWS Secret Key /// /// AWS Access Key ID /// AWS Secret Access Key /// AWS Session Token public AmazonKinesisFirehoseClient(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken) : this(awsAccessKeyId, awsSecretAccessKey, awsSessionToken, new AmazonKinesisFirehoseConfig()) { } /// /// Constructs AmazonKinesisFirehoseClient with AWS Access Key ID and AWS Secret Key /// /// AWS Access Key ID /// AWS Secret Access Key /// AWS Session Token /// The region to connect. public AmazonKinesisFirehoseClient(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken, RegionEndpoint region) : this(awsAccessKeyId, awsSecretAccessKey, awsSessionToken, new AmazonKinesisFirehoseConfig{RegionEndpoint = region}) { } /// /// Constructs AmazonKinesisFirehoseClient with AWS Access Key ID, AWS Secret Key and an /// AmazonKinesisFirehoseClient Configuration object. /// /// AWS Access Key ID /// AWS Secret Access Key /// AWS Session Token /// The AmazonKinesisFirehoseClient Configuration Object public AmazonKinesisFirehoseClient(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken, AmazonKinesisFirehoseConfig clientConfig) : base(awsAccessKeyId, awsSecretAccessKey, awsSessionToken, clientConfig) { } #endregion #region Overrides /// /// Creates the signer for the service. /// protected override AbstractAWSSigner CreateSigner() { return new AWS4Signer(); } /// /// Capture metadata for the service. /// protected override IServiceMetadata ServiceMetadata { get { return serviceMetadata; } } #endregion #region Dispose /// /// Disposes the service client. /// protected override void Dispose(bool disposing) { base.Dispose(disposing); } #endregion #region CreateDeliveryStream /// /// Initiates the asynchronous execution of the CreateDeliveryStream operation. /// /// /// Container for the necessary parameters to execute the CreateDeliveryStream operation on AmazonKinesisFirehoseClient. /// An Action delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// REST API Reference for CreateDeliveryStream Operation public virtual void CreateDeliveryStreamAsync(CreateDeliveryStreamRequest request, AmazonServiceCallback callback, AsyncOptions options = null) { options = options == null?new AsyncOptions():options; var invokeOptions = new InvokeOptions(); invokeOptions.RequestMarshaller = CreateDeliveryStreamRequestMarshaller.Instance; invokeOptions.ResponseUnmarshaller = CreateDeliveryStreamResponseUnmarshaller.Instance; Action callbackHelper = null; if(callback !=null ) callbackHelper = (AmazonWebServiceRequest req, AmazonWebServiceResponse res, Exception ex, AsyncOptions ao) => { AmazonServiceResult responseObject = new AmazonServiceResult((CreateDeliveryStreamRequest)req, (CreateDeliveryStreamResponse)res, ex , ao.State); callback(responseObject); }; BeginInvoke(request, invokeOptions, options, callbackHelper); } #endregion #region DeleteDeliveryStream /// /// Deletes a delivery stream and its data. /// /// /// /// To check the state of a delivery stream, use DescribeDeliveryStream. You can /// delete a delivery stream only if it is in one of the following states: ACTIVE, /// DELETING, CREATING_FAILED, or DELETING_FAILED. /// You can't delete a delivery stream that is in the CREATING state. While /// the deletion request is in process, the delivery stream is in the DELETING /// state. /// /// /// /// While the delivery stream is in the DELETING state, the service might /// continue to accept records, but it doesn't make any guarantees with respect to delivering /// the data. Therefore, as a best practice, first stop any applications that are sending /// records before you delete a delivery stream. /// /// /// The name of the delivery stream. /// An Action delegate that is invoked when the operation completes. /// /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// /// The response from the DeleteDeliveryStream service method, as returned by KinesisFirehose. /// /// The resource is already in use and not available for this operation. /// /// /// The specified resource could not be found. /// /// REST API Reference for DeleteDeliveryStream Operation public virtual void DeleteDeliveryStreamAsync(string deliveryStreamName, AmazonServiceCallback callback, AsyncOptions options = null) { var request = new DeleteDeliveryStreamRequest(); request.DeliveryStreamName = deliveryStreamName; DeleteDeliveryStreamAsync(request, callback, options); } /// /// Initiates the asynchronous execution of the DeleteDeliveryStream operation. /// /// /// Container for the necessary parameters to execute the DeleteDeliveryStream operation on AmazonKinesisFirehoseClient. /// An Action delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// REST API Reference for DeleteDeliveryStream Operation public virtual void DeleteDeliveryStreamAsync(DeleteDeliveryStreamRequest request, AmazonServiceCallback callback, AsyncOptions options = null) { options = options == null?new AsyncOptions():options; var invokeOptions = new InvokeOptions(); invokeOptions.RequestMarshaller = DeleteDeliveryStreamRequestMarshaller.Instance; invokeOptions.ResponseUnmarshaller = DeleteDeliveryStreamResponseUnmarshaller.Instance; Action callbackHelper = null; if(callback !=null ) callbackHelper = (AmazonWebServiceRequest req, AmazonWebServiceResponse res, Exception ex, AsyncOptions ao) => { AmazonServiceResult responseObject = new AmazonServiceResult((DeleteDeliveryStreamRequest)req, (DeleteDeliveryStreamResponse)res, ex , ao.State); callback(responseObject); }; BeginInvoke(request, invokeOptions, options, callbackHelper); } #endregion #region DescribeDeliveryStream /// /// Initiates the asynchronous execution of the DescribeDeliveryStream operation. /// /// /// Container for the necessary parameters to execute the DescribeDeliveryStream operation on AmazonKinesisFirehoseClient. /// An Action delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// REST API Reference for DescribeDeliveryStream Operation public virtual void DescribeDeliveryStreamAsync(DescribeDeliveryStreamRequest request, AmazonServiceCallback callback, AsyncOptions options = null) { options = options == null?new AsyncOptions():options; var invokeOptions = new InvokeOptions(); invokeOptions.RequestMarshaller = DescribeDeliveryStreamRequestMarshaller.Instance; invokeOptions.ResponseUnmarshaller = DescribeDeliveryStreamResponseUnmarshaller.Instance; Action callbackHelper = null; if(callback !=null ) callbackHelper = (AmazonWebServiceRequest req, AmazonWebServiceResponse res, Exception ex, AsyncOptions ao) => { AmazonServiceResult responseObject = new AmazonServiceResult((DescribeDeliveryStreamRequest)req, (DescribeDeliveryStreamResponse)res, ex , ao.State); callback(responseObject); }; BeginInvoke(request, invokeOptions, options, callbackHelper); } #endregion #region ListDeliveryStreams /// /// Lists your delivery streams in alphabetical order of their names. /// /// /// /// The number of delivery streams might be too large to return using a single call to /// ListDeliveryStreams. You can limit the number of delivery streams returned, /// using the Limit parameter. To determine whether there are more delivery /// streams to list, check the value of HasMoreDeliveryStreams in the output. /// If there are more delivery streams to list, you can request them by calling this operation /// again and setting the ExclusiveStartDeliveryStreamName parameter to the /// name of the last delivery stream returned in the last call. /// /// /// An Action delegate that is invoked when the operation completes. /// /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// /// The response from the ListDeliveryStreams service method, as returned by KinesisFirehose. /// REST API Reference for ListDeliveryStreams Operation public virtual void ListDeliveryStreamsAsync(AmazonServiceCallback callback, AsyncOptions options = null) { ListDeliveryStreamsAsync(new ListDeliveryStreamsRequest(), callback, options); } /// /// Initiates the asynchronous execution of the ListDeliveryStreams operation. /// /// /// Container for the necessary parameters to execute the ListDeliveryStreams operation on AmazonKinesisFirehoseClient. /// An Action delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// REST API Reference for ListDeliveryStreams Operation public virtual void ListDeliveryStreamsAsync(ListDeliveryStreamsRequest request, AmazonServiceCallback callback, AsyncOptions options = null) { options = options == null?new AsyncOptions():options; var invokeOptions = new InvokeOptions(); invokeOptions.RequestMarshaller = ListDeliveryStreamsRequestMarshaller.Instance; invokeOptions.ResponseUnmarshaller = ListDeliveryStreamsResponseUnmarshaller.Instance; Action callbackHelper = null; if(callback !=null ) callbackHelper = (AmazonWebServiceRequest req, AmazonWebServiceResponse res, Exception ex, AsyncOptions ao) => { AmazonServiceResult responseObject = new AmazonServiceResult((ListDeliveryStreamsRequest)req, (ListDeliveryStreamsResponse)res, ex , ao.State); callback(responseObject); }; BeginInvoke(request, invokeOptions, options, callbackHelper); } #endregion #region ListTagsForDeliveryStream /// /// Initiates the asynchronous execution of the ListTagsForDeliveryStream operation. /// /// /// Container for the necessary parameters to execute the ListTagsForDeliveryStream operation on AmazonKinesisFirehoseClient. /// An Action delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// REST API Reference for ListTagsForDeliveryStream Operation public virtual void ListTagsForDeliveryStreamAsync(ListTagsForDeliveryStreamRequest request, AmazonServiceCallback callback, AsyncOptions options = null) { options = options == null?new AsyncOptions():options; var invokeOptions = new InvokeOptions(); invokeOptions.RequestMarshaller = ListTagsForDeliveryStreamRequestMarshaller.Instance; invokeOptions.ResponseUnmarshaller = ListTagsForDeliveryStreamResponseUnmarshaller.Instance; Action callbackHelper = null; if(callback !=null ) callbackHelper = (AmazonWebServiceRequest req, AmazonWebServiceResponse res, Exception ex, AsyncOptions ao) => { AmazonServiceResult responseObject = new AmazonServiceResult((ListTagsForDeliveryStreamRequest)req, (ListTagsForDeliveryStreamResponse)res, ex , ao.State); callback(responseObject); }; BeginInvoke(request, invokeOptions, options, callbackHelper); } #endregion #region PutRecord /// /// Writes a single data record into an Amazon Kinesis Data Firehose delivery stream. /// To write multiple data records into a delivery stream, use PutRecordBatch. /// Applications using these operations are referred to as producers. /// /// /// /// By default, each delivery stream can take in up to 2,000 transactions per second, /// 5,000 records per second, or 5 MB per second. If you use PutRecord and PutRecordBatch, /// the limits are an aggregate across these two operations for each delivery stream. /// For more information about limits and how to request an increase, see Amazon /// Kinesis Data Firehose Limits. /// /// /// /// You must specify the name of the delivery stream and the data record when using PutRecord. /// The data record consists of a data blob that can be up to 1,000 KB in size, and any /// kind of data. For example, it can be a segment from a log file, geographic location /// data, website clickstream data, and so on. /// /// /// /// Kinesis Data Firehose buffers records before delivering them to the destination. To /// disambiguate the data blobs at the destination, a common solution is to use delimiters /// in the data, such as a newline (\n) or some other character unique within /// the data. This allows the consumer application to parse individual data items when /// reading the data from the destination. /// /// /// /// The PutRecord operation returns a RecordId, which is a unique /// string assigned to each record. Producer applications can use this ID for purposes /// such as auditability and investigation. /// /// /// /// If the PutRecord operation throws a ServiceUnavailableException, /// back off and retry. If the exception persists, it is possible that the throughput /// limits have been exceeded for the delivery stream. /// /// /// /// Data records sent to Kinesis Data Firehose are stored for 24 hours from the time they /// are added to a delivery stream as it tries to send the records to the destination. /// If the destination is unreachable for more than 24 hours, the data is no longer available. /// /// /// /// Don't concatenate two or more base64 strings to form the data fields of your records. /// Instead, concatenate the raw data, then perform base64 encoding. /// /// /// /// The name of the delivery stream. /// The record. /// An Action delegate that is invoked when the operation completes. /// /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// /// The response from the PutRecord service method, as returned by KinesisFirehose. /// /// The specified input parameter has a value that is not valid. /// /// /// Kinesis Data Firehose throws this exception when an attempt to put records or to start /// or stop delivery stream encryption fails. This happens when the KMS service throws /// one of the following exception types: AccessDeniedException, InvalidStateException, /// DisabledException, or NotFoundException. /// /// /// The specified resource could not be found. /// /// /// The service is unavailable. Back off and retry the operation. If you continue to see /// the exception, throughput limits for the delivery stream may have been exceeded. For /// more information about limits and how to request an increase, see Amazon /// Kinesis Data Firehose Limits. /// /// REST API Reference for PutRecord Operation public virtual void PutRecordAsync(string deliveryStreamName, Record record, AmazonServiceCallback callback, AsyncOptions options = null) { var request = new PutRecordRequest(); request.DeliveryStreamName = deliveryStreamName; request.Record = record; PutRecordAsync(request, callback, options); } /// /// Initiates the asynchronous execution of the PutRecord operation. /// /// /// Container for the necessary parameters to execute the PutRecord operation on AmazonKinesisFirehoseClient. /// An Action delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// REST API Reference for PutRecord Operation public virtual void PutRecordAsync(PutRecordRequest request, AmazonServiceCallback callback, AsyncOptions options = null) { options = options == null?new AsyncOptions():options; var invokeOptions = new InvokeOptions(); invokeOptions.RequestMarshaller = PutRecordRequestMarshaller.Instance; invokeOptions.ResponseUnmarshaller = PutRecordResponseUnmarshaller.Instance; Action callbackHelper = null; if(callback !=null ) callbackHelper = (AmazonWebServiceRequest req, AmazonWebServiceResponse res, Exception ex, AsyncOptions ao) => { AmazonServiceResult responseObject = new AmazonServiceResult((PutRecordRequest)req, (PutRecordResponse)res, ex , ao.State); callback(responseObject); }; BeginInvoke(request, invokeOptions, options, callbackHelper); } #endregion #region PutRecordBatch /// /// Writes multiple data records into a delivery stream in a single call, which can achieve /// higher throughput per producer than when writing single records. To write single data /// records into a delivery stream, use PutRecord. Applications using these operations /// are referred to as producers. /// /// /// /// By default, each delivery stream can take in up to 2,000 transactions per second, /// 5,000 records per second, or 5 MB per second. If you use PutRecord and PutRecordBatch, /// the limits are an aggregate across these two operations for each delivery stream. /// For more information about limits, see Amazon /// Kinesis Data Firehose Limits. /// /// /// /// Each PutRecordBatch request supports up to 500 records. Each record in the /// request can be as large as 1,000 KB (before 64-bit encoding), up to a limit of 4 MB /// for the entire request. These limits cannot be changed. /// /// /// /// You must specify the name of the delivery stream and the data record when using PutRecord. /// The data record consists of a data blob that can be up to 1,000 KB in size, and any /// kind of data. For example, it could be a segment from a log file, geographic location /// data, website clickstream data, and so on. /// /// /// /// Kinesis Data Firehose buffers records before delivering them to the destination. To /// disambiguate the data blobs at the destination, a common solution is to use delimiters /// in the data, such as a newline (\n) or some other character unique within /// the data. This allows the consumer application to parse individual data items when /// reading the data from the destination. /// /// /// /// The PutRecordBatch response includes a count of failed records, FailedPutCount, /// and an array of responses, RequestResponses. Even if the PutRecordBatch /// call succeeds, the value of FailedPutCount may be greater than 0, indicating /// that there are records for which the operation didn't succeed. Each entry in the RequestResponses /// array provides additional information about the processed record. It directly correlates /// with a record in the request array using the same ordering, from the top to the bottom. /// The response array always includes the same number of records as the request array. /// RequestResponses includes both successfully and unsuccessfully processed /// records. Kinesis Data Firehose tries to process all records in each PutRecordBatch /// request. A single record failure does not stop the processing of subsequent records. /// /// /// /// /// A successfully processed record includes a RecordId value, which is unique /// for the record. An unsuccessfully processed record includes ErrorCode /// and ErrorMessage values. ErrorCode reflects the type of /// error, and is one of the following values: ServiceUnavailableException /// or InternalFailure. ErrorMessage provides more detailed /// information about the error. /// /// /// /// If there is an internal server error or a timeout, the write might have completed /// or it might have failed. If FailedPutCount is greater than 0, retry the /// request, resending only those records that might have failed processing. This minimizes /// the possible duplicate records and also reduces the total bytes sent (and corresponding /// charges). We recommend that you handle any duplicates at the destination. /// /// /// /// If PutRecordBatch throws ServiceUnavailableException, back off /// and retry. If the exception persists, it is possible that the throughput limits have /// been exceeded for the delivery stream. /// /// /// /// Data records sent to Kinesis Data Firehose are stored for 24 hours from the time they /// are added to a delivery stream as it attempts to send the records to the destination. /// If the destination is unreachable for more than 24 hours, the data is no longer available. /// /// /// /// Don't concatenate two or more base64 strings to form the data fields of your records. /// Instead, concatenate the raw data, then perform base64 encoding. /// /// /// /// The name of the delivery stream. /// One or more records. /// An Action delegate that is invoked when the operation completes. /// /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// /// The response from the PutRecordBatch service method, as returned by KinesisFirehose. /// /// The specified input parameter has a value that is not valid. /// /// /// Kinesis Data Firehose throws this exception when an attempt to put records or to start /// or stop delivery stream encryption fails. This happens when the KMS service throws /// one of the following exception types: AccessDeniedException, InvalidStateException, /// DisabledException, or NotFoundException. /// /// /// The specified resource could not be found. /// /// /// The service is unavailable. Back off and retry the operation. If you continue to see /// the exception, throughput limits for the delivery stream may have been exceeded. For /// more information about limits and how to request an increase, see Amazon /// Kinesis Data Firehose Limits. /// /// REST API Reference for PutRecordBatch Operation public virtual void PutRecordBatchAsync(string deliveryStreamName, List records, AmazonServiceCallback callback, AsyncOptions options = null) { var request = new PutRecordBatchRequest(); request.DeliveryStreamName = deliveryStreamName; request.Records = records; PutRecordBatchAsync(request, callback, options); } /// /// Initiates the asynchronous execution of the PutRecordBatch operation. /// /// /// Container for the necessary parameters to execute the PutRecordBatch operation on AmazonKinesisFirehoseClient. /// An Action delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// REST API Reference for PutRecordBatch Operation public virtual void PutRecordBatchAsync(PutRecordBatchRequest request, AmazonServiceCallback callback, AsyncOptions options = null) { options = options == null?new AsyncOptions():options; var invokeOptions = new InvokeOptions(); invokeOptions.RequestMarshaller = PutRecordBatchRequestMarshaller.Instance; invokeOptions.ResponseUnmarshaller = PutRecordBatchResponseUnmarshaller.Instance; Action callbackHelper = null; if(callback !=null ) callbackHelper = (AmazonWebServiceRequest req, AmazonWebServiceResponse res, Exception ex, AsyncOptions ao) => { AmazonServiceResult responseObject = new AmazonServiceResult((PutRecordBatchRequest)req, (PutRecordBatchResponse)res, ex , ao.State); callback(responseObject); }; BeginInvoke(request, invokeOptions, options, callbackHelper); } #endregion #region StartDeliveryStreamEncryption /// /// Initiates the asynchronous execution of the StartDeliveryStreamEncryption operation. /// /// /// Container for the necessary parameters to execute the StartDeliveryStreamEncryption operation on AmazonKinesisFirehoseClient. /// An Action delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// REST API Reference for StartDeliveryStreamEncryption Operation public virtual void StartDeliveryStreamEncryptionAsync(StartDeliveryStreamEncryptionRequest request, AmazonServiceCallback callback, AsyncOptions options = null) { options = options == null?new AsyncOptions():options; var invokeOptions = new InvokeOptions(); invokeOptions.RequestMarshaller = StartDeliveryStreamEncryptionRequestMarshaller.Instance; invokeOptions.ResponseUnmarshaller = StartDeliveryStreamEncryptionResponseUnmarshaller.Instance; Action callbackHelper = null; if(callback !=null ) callbackHelper = (AmazonWebServiceRequest req, AmazonWebServiceResponse res, Exception ex, AsyncOptions ao) => { AmazonServiceResult responseObject = new AmazonServiceResult((StartDeliveryStreamEncryptionRequest)req, (StartDeliveryStreamEncryptionResponse)res, ex , ao.State); callback(responseObject); }; BeginInvoke(request, invokeOptions, options, callbackHelper); } #endregion #region StopDeliveryStreamEncryption /// /// Initiates the asynchronous execution of the StopDeliveryStreamEncryption operation. /// /// /// Container for the necessary parameters to execute the StopDeliveryStreamEncryption operation on AmazonKinesisFirehoseClient. /// An Action delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// REST API Reference for StopDeliveryStreamEncryption Operation public virtual void StopDeliveryStreamEncryptionAsync(StopDeliveryStreamEncryptionRequest request, AmazonServiceCallback callback, AsyncOptions options = null) { options = options == null?new AsyncOptions():options; var invokeOptions = new InvokeOptions(); invokeOptions.RequestMarshaller = StopDeliveryStreamEncryptionRequestMarshaller.Instance; invokeOptions.ResponseUnmarshaller = StopDeliveryStreamEncryptionResponseUnmarshaller.Instance; Action callbackHelper = null; if(callback !=null ) callbackHelper = (AmazonWebServiceRequest req, AmazonWebServiceResponse res, Exception ex, AsyncOptions ao) => { AmazonServiceResult responseObject = new AmazonServiceResult((StopDeliveryStreamEncryptionRequest)req, (StopDeliveryStreamEncryptionResponse)res, ex , ao.State); callback(responseObject); }; BeginInvoke(request, invokeOptions, options, callbackHelper); } #endregion #region TagDeliveryStream /// /// Initiates the asynchronous execution of the TagDeliveryStream operation. /// /// /// Container for the necessary parameters to execute the TagDeliveryStream operation on AmazonKinesisFirehoseClient. /// An Action delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// REST API Reference for TagDeliveryStream Operation public virtual void TagDeliveryStreamAsync(TagDeliveryStreamRequest request, AmazonServiceCallback callback, AsyncOptions options = null) { options = options == null?new AsyncOptions():options; var invokeOptions = new InvokeOptions(); invokeOptions.RequestMarshaller = TagDeliveryStreamRequestMarshaller.Instance; invokeOptions.ResponseUnmarshaller = TagDeliveryStreamResponseUnmarshaller.Instance; Action callbackHelper = null; if(callback !=null ) callbackHelper = (AmazonWebServiceRequest req, AmazonWebServiceResponse res, Exception ex, AsyncOptions ao) => { AmazonServiceResult responseObject = new AmazonServiceResult((TagDeliveryStreamRequest)req, (TagDeliveryStreamResponse)res, ex , ao.State); callback(responseObject); }; BeginInvoke(request, invokeOptions, options, callbackHelper); } #endregion #region UntagDeliveryStream /// /// Initiates the asynchronous execution of the UntagDeliveryStream operation. /// /// /// Container for the necessary parameters to execute the UntagDeliveryStream operation on AmazonKinesisFirehoseClient. /// An Action delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// REST API Reference for UntagDeliveryStream Operation public virtual void UntagDeliveryStreamAsync(UntagDeliveryStreamRequest request, AmazonServiceCallback callback, AsyncOptions options = null) { options = options == null?new AsyncOptions():options; var invokeOptions = new InvokeOptions(); invokeOptions.RequestMarshaller = UntagDeliveryStreamRequestMarshaller.Instance; invokeOptions.ResponseUnmarshaller = UntagDeliveryStreamResponseUnmarshaller.Instance; Action callbackHelper = null; if(callback !=null ) callbackHelper = (AmazonWebServiceRequest req, AmazonWebServiceResponse res, Exception ex, AsyncOptions ao) => { AmazonServiceResult responseObject = new AmazonServiceResult((UntagDeliveryStreamRequest)req, (UntagDeliveryStreamResponse)res, ex , ao.State); callback(responseObject); }; BeginInvoke(request, invokeOptions, options, callbackHelper); } #endregion #region UpdateDestination /// /// Initiates the asynchronous execution of the UpdateDestination operation. /// /// /// Container for the necessary parameters to execute the UpdateDestination operation on AmazonKinesisFirehoseClient. /// An Action delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// REST API Reference for UpdateDestination Operation public virtual void UpdateDestinationAsync(UpdateDestinationRequest request, AmazonServiceCallback callback, AsyncOptions options = null) { options = options == null?new AsyncOptions():options; var invokeOptions = new InvokeOptions(); invokeOptions.RequestMarshaller = UpdateDestinationRequestMarshaller.Instance; invokeOptions.ResponseUnmarshaller = UpdateDestinationResponseUnmarshaller.Instance; Action callbackHelper = null; if(callback !=null ) callbackHelper = (AmazonWebServiceRequest req, AmazonWebServiceResponse res, Exception ex, AsyncOptions ao) => { AmazonServiceResult responseObject = new AmazonServiceResult((UpdateDestinationRequest)req, (UpdateDestinationResponse)res, ex , ao.State); callback(responseObject); }; BeginInvoke(request, invokeOptions, options, callbackHelper); } #endregion } }