/* * 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 CreateStream operation. /// Creates a Kinesis data stream. A stream captures and transports data records that /// are continuously emitted from different data sources or producers. Scale-out /// within a stream is explicitly supported by means of shards, which are uniquely identified /// groups of data records in a stream. /// /// /// /// You can create your data stream using either on-demand or provisioned capacity mode. /// Data streams with an on-demand mode require no capacity planning and automatically /// scale to handle gigabytes of write and read throughput per minute. With the on-demand /// mode, Kinesis Data Streams automatically manages the shards in order to provide the /// necessary throughput. For the data streams with a provisioned mode, you must specify /// the number of shards for the data stream. Each shard can support reads up to five /// transactions per second, up to a maximum data read total of 2 MiB per second. Each /// shard can support writes up to 1,000 records per second, up to a maximum data write /// total of 1 MiB per second. If the amount of data input increases or decreases, you /// can add or remove shards. /// /// /// /// The stream name identifies the stream. The name is scoped to the Amazon Web Services /// account used by the application. It is also scoped by Amazon Web Services Region. /// That is, two streams in two different accounts can have the same name, and two streams /// in the same account, but in two different Regions, can have the same name. /// /// /// /// CreateStream is an asynchronous operation. Upon receiving a CreateStream /// request, Kinesis Data Streams immediately returns and sets the stream status to CREATING. /// After the stream is created, Kinesis Data Streams sets the stream status to ACTIVE. /// You should perform read and write operations only on an ACTIVE stream. /// /// /// /// /// You receive a LimitExceededException when making a CreateStream /// request when you try to do one of the following: /// /// /// /// For the default shard limit for an Amazon Web Services account, see Amazon /// Kinesis Data Streams Limits in the Amazon Kinesis Data Streams Developer Guide. /// To increase this limit, contact /// Amazon Web Services Support. /// /// /// /// You can use DescribeStreamSummary to check the stream status, which is returned /// in StreamStatus. /// /// /// /// CreateStream has a limit of five transactions per second per account. /// /// public partial class CreateStreamRequest : AmazonKinesisRequest { private int? _shardCount; private StreamModeDetails _streamModeDetails; private string _streamName; /// /// Gets and sets the property ShardCount. /// /// The number of shards that the stream will use. The throughput of the stream is a function /// of the number of shards; more shards are required for greater provisioned throughput. /// /// [AWSProperty(Min=1)] public int ShardCount { get { return this._shardCount.GetValueOrDefault(); } set { this._shardCount = value; } } // Check to see if ShardCount property is set internal bool IsSetShardCount() { return this._shardCount.HasValue; } /// /// Gets and sets the property StreamModeDetails. /// /// Indicates the capacity mode of the data stream. Currently, in Kinesis Data Streams, /// you can choose between an on-demand capacity mode and a provisioned /// capacity mode for your data streams. /// /// public StreamModeDetails StreamModeDetails { get { return this._streamModeDetails; } set { this._streamModeDetails = value; } } // Check to see if StreamModeDetails property is set internal bool IsSetStreamModeDetails() { return this._streamModeDetails != null; } /// /// Gets and sets the property StreamName. /// /// A name to identify the stream. The stream name is scoped to the Amazon Web Services /// account used by the application that creates the stream. It is also scoped by Amazon /// Web Services Region. That is, two streams in two different Amazon Web Services accounts /// can have the same name. Two streams in the same Amazon Web Services account but in /// two different Regions can also have the same name. /// /// [AWSProperty(Required=true, 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; } } }