/* * 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 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 Amazon.Runtime; using Amazon.Runtime.Internal; namespace Amazon.Kinesis.Model { /// /// The unit of data of the Kinesis data stream, which is composed of a sequence number, /// a partition key, and a data blob. /// public partial class Record { private DateTime? _approximateArrivalTimestamp; private MemoryStream _data; private EncryptionType _encryptionType; private string _partitionKey; private string _sequenceNumber; /// /// Gets and sets the property ApproximateArrivalTimestamp. /// /// The approximate time that the record was inserted into the stream. /// /// public DateTime ApproximateArrivalTimestamp { get { return this._approximateArrivalTimestamp.GetValueOrDefault(); } set { this._approximateArrivalTimestamp = value; } } // Check to see if ApproximateArrivalTimestamp property is set internal bool IsSetApproximateArrivalTimestamp() { return this._approximateArrivalTimestamp.HasValue; } /// /// Gets and sets the property Data. /// /// The data blob. The data in the blob is both opaque and immutable to Kinesis Data Streams, /// which does not inspect, interpret, or change the data in the blob in any way. When /// the data blob (the payload before base64-encoding) is added to the partition key size, /// the total size must not exceed the maximum record size (1 MB). /// /// [AWSProperty(Required=true, Min=0, Max=1048576)] public MemoryStream Data { get { return this._data; } set { this._data = value; } } // Check to see if Data property is set internal bool IsSetData() { return this._data != null; } /// /// Gets and sets the property EncryptionType. /// /// The encryption type used on the record. This parameter can be one of the following /// values: /// /// /// public EncryptionType EncryptionType { get { return this._encryptionType; } set { this._encryptionType = value; } } // Check to see if EncryptionType property is set internal bool IsSetEncryptionType() { return this._encryptionType != null; } /// /// Gets and sets the property PartitionKey. /// /// Identifies which shard in the stream the data record is assigned to. /// /// [AWSProperty(Required=true, Min=1, Max=256)] public string PartitionKey { get { return this._partitionKey; } set { this._partitionKey = value; } } // Check to see if PartitionKey property is set internal bool IsSetPartitionKey() { return this._partitionKey != null; } /// /// Gets and sets the property SequenceNumber. /// /// The unique identifier of the record within its shard. /// /// [AWSProperty(Required=true)] public string SequenceNumber { get { return this._sequenceNumber; } set { this._sequenceNumber = value; } } // Check to see if SequenceNumber property is set internal bool IsSetSequenceNumber() { return this._sequenceNumber != null; } } }