class Amazonite::Kinesis::Record

Overview

The unit of data of the Kinesis data stream, which is composed of a sequence number, a partition key, and a data blob.

Included Modules

Defined in:

kinesis/record.cr

Constructors

Instance Method Summary

Constructor Detail

def self.new(sequence_number : String, data : Bytes, partition_key : String, approximate_arrival_timestamp : Time | Nil = nil, encryption_type : EncryptionType | Nil = nil) #

[View source]
def self.new(pull : JSON::PullParser) #

[View source]

Instance Method Detail

def ==(other : self) #
Description copied from class Reference

Returns true if this reference is the same as other. Invokes same?.


def approximate_arrival_timestamp : Time | Nil #

The approximate time that the record was inserted into the stream.


[View source]
def approximate_arrival_timestamp=(approximate_arrival_timestamp : Time | Nil) #

The approximate time that the record was inserted into the stream.


[View source]
def data : Bytes #

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 (10 MiB).


[View source]
def data=(data : Bytes) #

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 (10 MiB).


[View source]
def encryption_type : EncryptionType | Nil #

The encryption type used on the record. This parameter can be one of the following values:

  • NONE: Do not encrypt the records in the stream.

  • KMS: Use server-side encryption on the records in the stream using a customer-managed Amazon Web Services KMS key.


[View source]
def encryption_type=(encryption_type : EncryptionType | Nil) #

The encryption type used on the record. This parameter can be one of the following values:

  • NONE: Do not encrypt the records in the stream.

  • KMS: Use server-side encryption on the records in the stream using a customer-managed Amazon Web Services KMS key.


[View source]
def hash(hasher) #
Description copied from class Reference

See Object#hash(hasher)


def partition_key : String #

Identifies which shard in the stream the data record is assigned to.


[View source]
def partition_key=(partition_key : String) #

Identifies which shard in the stream the data record is assigned to.


[View source]
def sequence_number : String #

The unique identifier of the record within its shard.


[View source]
def sequence_number=(sequence_number : String) #

The unique identifier of the record within its shard.


[View source]
def validate! : Nil #

[View source]