/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include namespace Aws { template class AmazonWebServiceResult; namespace Utils { namespace Json { class JsonValue; } // namespace Json } // namespace Utils namespace Kinesis { namespace Model { /** *

Represents the output for GetRecords.

See Also:

AWS * API Reference

*/ class AWS_KINESIS_API GetRecordsResult { public: GetRecordsResult(); GetRecordsResult(const Aws::AmazonWebServiceResult& result); GetRecordsResult& operator=(const Aws::AmazonWebServiceResult& result); /** *

The data records retrieved from the shard.

*/ inline const Aws::Vector& GetRecords() const{ return m_records; } /** *

The data records retrieved from the shard.

*/ inline void SetRecords(const Aws::Vector& value) { m_records = value; } /** *

The data records retrieved from the shard.

*/ inline void SetRecords(Aws::Vector&& value) { m_records = std::move(value); } /** *

The data records retrieved from the shard.

*/ inline GetRecordsResult& WithRecords(const Aws::Vector& value) { SetRecords(value); return *this;} /** *

The data records retrieved from the shard.

*/ inline GetRecordsResult& WithRecords(Aws::Vector&& value) { SetRecords(std::move(value)); return *this;} /** *

The data records retrieved from the shard.

*/ inline GetRecordsResult& AddRecords(const Record& value) { m_records.push_back(value); return *this; } /** *

The data records retrieved from the shard.

*/ inline GetRecordsResult& AddRecords(Record&& value) { m_records.push_back(std::move(value)); return *this; } /** *

The next position in the shard from which to start sequentially reading data * records. If set to null, the shard has been closed and the * requested iterator does not return any more data.

*/ inline const Aws::String& GetNextShardIterator() const{ return m_nextShardIterator; } /** *

The next position in the shard from which to start sequentially reading data * records. If set to null, the shard has been closed and the * requested iterator does not return any more data.

*/ inline void SetNextShardIterator(const Aws::String& value) { m_nextShardIterator = value; } /** *

The next position in the shard from which to start sequentially reading data * records. If set to null, the shard has been closed and the * requested iterator does not return any more data.

*/ inline void SetNextShardIterator(Aws::String&& value) { m_nextShardIterator = std::move(value); } /** *

The next position in the shard from which to start sequentially reading data * records. If set to null, the shard has been closed and the * requested iterator does not return any more data.

*/ inline void SetNextShardIterator(const char* value) { m_nextShardIterator.assign(value); } /** *

The next position in the shard from which to start sequentially reading data * records. If set to null, the shard has been closed and the * requested iterator does not return any more data.

*/ inline GetRecordsResult& WithNextShardIterator(const Aws::String& value) { SetNextShardIterator(value); return *this;} /** *

The next position in the shard from which to start sequentially reading data * records. If set to null, the shard has been closed and the * requested iterator does not return any more data.

*/ inline GetRecordsResult& WithNextShardIterator(Aws::String&& value) { SetNextShardIterator(std::move(value)); return *this;} /** *

The next position in the shard from which to start sequentially reading data * records. If set to null, the shard has been closed and the * requested iterator does not return any more data.

*/ inline GetRecordsResult& WithNextShardIterator(const char* value) { SetNextShardIterator(value); return *this;} /** *

The number of milliseconds the GetRecords response is from the tip of * the stream, indicating how far behind current time the consumer is. A value of * zero indicates that record processing is caught up, and there are no new records * to process at this moment.

*/ inline long long GetMillisBehindLatest() const{ return m_millisBehindLatest; } /** *

The number of milliseconds the GetRecords response is from the tip of * the stream, indicating how far behind current time the consumer is. A value of * zero indicates that record processing is caught up, and there are no new records * to process at this moment.

*/ inline void SetMillisBehindLatest(long long value) { m_millisBehindLatest = value; } /** *

The number of milliseconds the GetRecords response is from the tip of * the stream, indicating how far behind current time the consumer is. A value of * zero indicates that record processing is caught up, and there are no new records * to process at this moment.

*/ inline GetRecordsResult& WithMillisBehindLatest(long long value) { SetMillisBehindLatest(value); return *this;} inline const Aws::Vector& GetChildShards() const{ return m_childShards; } inline void SetChildShards(const Aws::Vector& value) { m_childShards = value; } inline void SetChildShards(Aws::Vector&& value) { m_childShards = std::move(value); } inline GetRecordsResult& WithChildShards(const Aws::Vector& value) { SetChildShards(value); return *this;} inline GetRecordsResult& WithChildShards(Aws::Vector&& value) { SetChildShards(std::move(value)); return *this;} inline GetRecordsResult& AddChildShards(const ChildShard& value) { m_childShards.push_back(value); return *this; } inline GetRecordsResult& AddChildShards(ChildShard&& value) { m_childShards.push_back(std::move(value)); return *this; } private: Aws::Vector m_records; Aws::String m_nextShardIterator; long long m_millisBehindLatest; Aws::Vector m_childShards; }; } // namespace Model } // namespace Kinesis } // namespace Aws