aws-kinesis-0.1.4: Bindings for Amazon Kinesis

CopyrightCopyright (c) 2013-2015 PivotCloud, Inc.
LicenseApache License, Version 2.0
MaintainerLars Kuhtz <lars@alephcloud.com>
Stabilityexperimental
Safe HaskellNone
LanguageHaskell2010

Aws.Kinesis.Commands.DescribeStream

Description

API Version: 2013-03-31

This operation returns the following information about the stream: the current status of the stream, the stream Amazon Resource Name (ARN), and an array of shard objects that comprise the stream. For each shard object there is information about the hash key and sequence number ranges that the shard spans, and the IDs of any earlier shards that played in a role in a MergeShards or SplitShard operation that created the shard. A sequence number is the identifier associated with every record ingested in the Amazon Kinesis stream. The sequence number is assigned by the Amazon Kinesis service when a record is put into the stream.

You can limit the number of returned shards using the Limit parameter. The number of shards in a stream may be too large to return from a single call to DescribeStream. You can detect this by using the HasMoreShards flag in the returned output. HasMoreShards is set to true when there is more data available.

If there are more shards available, you can request more shards by using the shard ID of the last shard returned by the DescribeStream request, in the ExclusiveStartShardId parameter in a subsequent request to DescribeStream. DescribeStream is a paginated operation.

DescribeStream has a limit of 10 transactions per second per account.

http://docs.aws.amazon.com/kinesis/2013-12-02/APIReference/API_DescribeStream.html

Documentation

data DescribeStream Source

Constructors

DescribeStream 

Fields

describeStreamExclusiveStartShardId :: !(Maybe ShardId)

The shard ID of the shard to start with for the stream description.

describeStreamLimit :: !(Maybe Int)

The maximum number of shards to return.

describeStreamStreamName :: !StreamName

The name of the stream to describe.

Instances

Eq DescribeStream 
Ord DescribeStream 
Read DescribeStream 
Show DescribeStream 
ToJSON DescribeStream 
SignQuery DescribeStream 
Typeable * DescribeStream 
Transaction DescribeStream DescribeStreamResponse 
IteratedTransaction DescribeStream DescribeStreamResponse

This instance assumes that the returned StreamDescription contains at least one shard if available, i.e. if streamDescriptionResHasMoreShards == True.

Otherwise, in case no shard is returned but streamDescriptionHasMoreShards == True the implementation in this instance returns Nothing, thus ignoring the value of streamDescriptionHasMoreShards. The alternatives would be to either throw an exception or to start over with a reqeust for the first set of shards which could result in a non-terminating behavior.

The request parameter describeStreamLimit is interpreted as limit for each single request and not for the overall transaction.

type ServiceConfiguration DescribeStream = KinesisConfiguration 

data DescribeStreamResponse Source

Constructors

DescribeStreamResponse 

Fields

describeStreamResStreamDescription :: !StreamDescription

Contains the current status of the stream, the stream ARN, an array of shard objects that comprise the stream, and states whether there are more shards available.

Instances

Eq DescribeStreamResponse 
Ord DescribeStreamResponse 
Read DescribeStreamResponse 
Show DescribeStreamResponse 
FromJSON DescribeStreamResponse 
AsMemoryResponse DescribeStreamResponse 
Typeable * DescribeStreamResponse 
ResponseConsumer r DescribeStreamResponse 
ListResponse DescribeStreamResponse Shard 
Transaction DescribeStream DescribeStreamResponse 
IteratedTransaction DescribeStream DescribeStreamResponse

This instance assumes that the returned StreamDescription contains at least one shard if available, i.e. if streamDescriptionResHasMoreShards == True.

Otherwise, in case no shard is returned but streamDescriptionHasMoreShards == True the implementation in this instance returns Nothing, thus ignoring the value of streamDescriptionHasMoreShards. The alternatives would be to either throw an exception or to start over with a reqeust for the first set of shards which could result in a non-terminating behavior.

The request parameter describeStreamLimit is interpreted as limit for each single request and not for the overall transaction.

type ResponseMetadata DescribeStreamResponse = KinesisMetadata 
type MemoryResponse DescribeStreamResponse = DescribeStreamResponse