Package org.apache.pulsar.client.api
Interface MessageId
- All Superinterfaces:
Comparable<MessageId>
,Serializable
- All Known Subinterfaces:
TopicMessageId
Opaque unique identifier of a single message
The MessageId can be used to reference a specific message, for example when acknowledging, without having to retain the message content in memory for an extended period of time.
Message ids are Comparable
and a bigger message id will imply that a message was published "after"
the other one.
-
Field Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic MessageId
fromByteArray
(byte[] data) De-serialize a message id from a byte array.static MessageId
fromByteArrayWithTopic
(byte[] data, String topicName) De-serialize a message id from a byte array with its topic information attached.byte[]
Serialize the message ID into a byte array.Methods inherited from interface java.lang.Comparable
compareTo
-
Field Details
-
earliest
MessageId that represents the oldest message available in the topic. -
latest
MessageId that represents the next message published in the topic.
-
-
Method Details
-
toByteArray
byte[] toByteArray()Serialize the message ID into a byte array.The serialized message id can be stored away and later get deserialized by using
fromByteArray(byte[])
. -
fromByteArray
De-serialize a message id from a byte array.- Parameters:
data
- byte array containing the serialized message id- Returns:
- the de-serialized messageId object
- Throws:
IOException
- if the de-serialization fails
-
fromByteArrayWithTopic
De-serialize a message id from a byte array with its topic information attached.The topic information is needed when acknowledging a
MessageId
on a consumer that is consuming from multiple topics.- Parameters:
data
- the byte array with the serialized message idtopicName
- the topic name- Returns:
- a
instance
- Throws:
IOException
- if the de-serialization fails
-