public class Record
extends java.lang.Object
implements java.io.Serializable, java.lang.Cloneable
The unit of data of the Amazon Kinesis stream, which is composed of a sequence number, a partition key, and a data blob.
Modifier and Type | Field and Description |
---|---|
private java.util.Date |
approximateArrivalTimestamp
The approximate time that the record was inserted into the stream.
|
private java.nio.ByteBuffer |
data
The data blob.
|
private java.lang.String |
partitionKey
Identifies which shard in the stream the data record is assigned to.
|
private java.lang.String |
sequenceNumber
The unique identifier of the record in the stream.
|
Constructor and Description |
---|
Record() |
Modifier and Type | Method and Description |
---|---|
Record |
clone() |
boolean |
equals(java.lang.Object obj) |
java.util.Date |
getApproximateArrivalTimestamp()
The approximate time that the record was inserted into the stream.
|
java.nio.ByteBuffer |
getData()
The data blob.
|
java.lang.String |
getPartitionKey()
Identifies which shard in the stream the data record is assigned to.
|
java.lang.String |
getSequenceNumber()
The unique identifier of the record in the stream.
|
int |
hashCode() |
void |
setApproximateArrivalTimestamp(java.util.Date approximateArrivalTimestamp)
The approximate time that the record was inserted into the stream.
|
void |
setData(java.nio.ByteBuffer data)
The data blob.
|
void |
setPartitionKey(java.lang.String partitionKey)
Identifies which shard in the stream the data record is assigned to.
|
void |
setSequenceNumber(java.lang.String sequenceNumber)
The unique identifier of the record in the stream.
|
java.lang.String |
toString()
Returns a string representation of this object; useful for testing and
debugging.
|
Record |
withApproximateArrivalTimestamp(java.util.Date approximateArrivalTimestamp)
The approximate time that the record was inserted into the stream.
|
Record |
withData(java.nio.ByteBuffer data)
The data blob.
|
Record |
withPartitionKey(java.lang.String partitionKey)
Identifies which shard in the stream the data record is assigned to.
|
Record |
withSequenceNumber(java.lang.String sequenceNumber)
The unique identifier of the record in the stream.
|
private java.lang.String sequenceNumber
The unique identifier of the record in the stream.
private java.util.Date approximateArrivalTimestamp
The approximate time that the record was inserted into the stream.
private java.nio.ByteBuffer data
The data blob. The data in the blob is both opaque and immutable to the Amazon Kinesis service, 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).
private java.lang.String partitionKey
Identifies which shard in the stream the data record is assigned to.
public void setSequenceNumber(java.lang.String sequenceNumber)
The unique identifier of the record in the stream.
sequenceNumber
- The unique identifier of the record in the stream.public java.lang.String getSequenceNumber()
The unique identifier of the record in the stream.
public Record withSequenceNumber(java.lang.String sequenceNumber)
The unique identifier of the record in the stream.
sequenceNumber
- The unique identifier of the record in the stream.public void setApproximateArrivalTimestamp(java.util.Date approximateArrivalTimestamp)
The approximate time that the record was inserted into the stream.
approximateArrivalTimestamp
- The approximate time that the record was inserted into the stream.public java.util.Date getApproximateArrivalTimestamp()
The approximate time that the record was inserted into the stream.
public Record withApproximateArrivalTimestamp(java.util.Date approximateArrivalTimestamp)
The approximate time that the record was inserted into the stream.
approximateArrivalTimestamp
- The approximate time that the record was inserted into the stream.public void setData(java.nio.ByteBuffer data)
The data blob. The data in the blob is both opaque and immutable to the Amazon Kinesis service, 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).
AWS SDK for Java performs a Base64 encoding on this field before sending this request to AWS service by default. Users of the SDK should not perform Base64 encoding on this field.
Warning: ByteBuffers returned by the SDK are mutable. Changes to the content or position of the byte buffer will be seen by all objects that have a reference to this object. It is recommended to call ByteBuffer.duplicate() or ByteBuffer.asReadOnlyBuffer() before using or reading from the buffer. This behavior will be changed in a future major version of the SDK.
data
- The data blob. The data in the blob is both opaque and immutable
to the Amazon Kinesis service, 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).public java.nio.ByteBuffer getData()
The data blob. The data in the blob is both opaque and immutable to the Amazon Kinesis service, 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).
ByteBuffer
s are stateful. Calling their get
methods
changes their position
. We recommend using
ByteBuffer.asReadOnlyBuffer()
to create a read-only view
of the buffer with an independent position
, and calling
get
methods on this rather than directly on the returned
ByteBuffer
. Doing so will ensure that anyone else using the
ByteBuffer
will not be affected by changes to the position
.
public Record withData(java.nio.ByteBuffer data)
The data blob. The data in the blob is both opaque and immutable to the Amazon Kinesis service, 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).
data
- The data blob. The data in the blob is both opaque and immutable
to the Amazon Kinesis service, 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).public void setPartitionKey(java.lang.String partitionKey)
Identifies which shard in the stream the data record is assigned to.
partitionKey
- Identifies which shard in the stream the data record is assigned
to.public java.lang.String getPartitionKey()
Identifies which shard in the stream the data record is assigned to.
public Record withPartitionKey(java.lang.String partitionKey)
Identifies which shard in the stream the data record is assigned to.
partitionKey
- Identifies which shard in the stream the data record is assigned
to.public java.lang.String toString()
toString
in class java.lang.Object
Object.toString()
public boolean equals(java.lang.Object obj)
equals
in class java.lang.Object
public int hashCode()
hashCode
in class java.lang.Object
public Record clone()
clone
in class java.lang.Object