/*
* Copyright 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 kinesis-2013-12-02.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
using System.Net;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
namespace Amazon.Kinesis.Model
{
///
/// Container for the parameters to the DeleteStream operation.
/// Deletes a Kinesis data stream and all its shards and data. You must shut down any
/// applications that are operating on the stream before you delete the stream. If an
/// application attempts to operate on a deleted stream, it receives the exception ResourceNotFoundException
.
///
///
///
/// When invoking this API, it is recommended you use the StreamARN
input
/// parameter rather than the StreamName
input parameter.
///
///
///
/// If the stream is in the ACTIVE
state, you can delete it. After a DeleteStream
/// request, the specified stream is in the DELETING
state until Kinesis
/// Data Streams completes the deletion.
///
///
///
/// Note: Kinesis Data Streams might continue to accept data read and write operations,
/// such as PutRecord, PutRecords, and GetRecords, on a stream in
/// the DELETING
state until the stream deletion is complete.
///
///
///
/// When you delete a stream, any shards in that stream are also deleted, and any tags
/// are dissociated from the stream.
///
///
///
/// You can use the DescribeStreamSummary operation to check the state of the stream,
/// which is returned in StreamStatus
.
///
///
///
/// DeleteStream has a limit of five transactions per second per account.
///
///
public partial class DeleteStreamRequest : AmazonKinesisRequest
{
private bool? _enforceConsumerDeletion;
private string _streamARN;
private string _streamName;
///
/// Gets and sets the property EnforceConsumerDeletion.
///
/// If this parameter is unset (null
) or if you set it to false
,
/// and the stream has registered consumers, the call to DeleteStream
fails
/// with a ResourceInUseException
.
///
///
public bool EnforceConsumerDeletion
{
get { return this._enforceConsumerDeletion.GetValueOrDefault(); }
set { this._enforceConsumerDeletion = value; }
}
// Check to see if EnforceConsumerDeletion property is set
internal bool IsSetEnforceConsumerDeletion()
{
return this._enforceConsumerDeletion.HasValue;
}
///
/// Gets and sets the property StreamARN.
///
/// The ARN of the stream.
///
///
[AWSProperty(Min=1, Max=2048)]
public string StreamARN
{
get { return this._streamARN; }
set { this._streamARN = value; }
}
// Check to see if StreamARN property is set
internal bool IsSetStreamARN()
{
return this._streamARN != null;
}
///
/// Gets and sets the property StreamName.
///
/// The name of the stream to delete.
///
///
[AWSProperty(Min=1, Max=128)]
public string StreamName
{
get { return this._streamName; }
set { this._streamName = value; }
}
// Check to see if StreamName property is set
internal bool IsSetStreamName()
{
return this._streamName != null;
}
}
}