mirror of
https://gitee.com/milvus-io/milvus.git
synced 2025-12-08 18:18:30 +08:00
Related to #39095 https://go.dev/doc/modules/version-numbers Update pkg version according to golang dep version convention --------- Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
45 lines
943 B
Go
45 lines
943 B
Go
package kafka
|
|
|
|
import (
|
|
"github.com/milvus-io/milvus/pkg/v2/common"
|
|
mqcommon "github.com/milvus-io/milvus/pkg/v2/mq/common"
|
|
)
|
|
|
|
func NewKafkaID(messageID int64) mqcommon.MessageID {
|
|
return &KafkaID{
|
|
MessageID: messageID,
|
|
}
|
|
}
|
|
|
|
type KafkaID struct {
|
|
MessageID int64
|
|
}
|
|
|
|
var _ mqcommon.MessageID = &KafkaID{}
|
|
|
|
func (kid *KafkaID) Serialize() []byte {
|
|
return SerializeKafkaID(kid.MessageID)
|
|
}
|
|
|
|
func (kid *KafkaID) AtEarliestPosition() bool {
|
|
return kid.MessageID <= 0
|
|
}
|
|
|
|
func (kid *KafkaID) Equal(msgID []byte) (bool, error) {
|
|
return kid.MessageID == DeserializeKafkaID(msgID), nil
|
|
}
|
|
|
|
func (kid *KafkaID) LessOrEqualThan(msgID []byte) (bool, error) {
|
|
return kid.MessageID <= DeserializeKafkaID(msgID), nil
|
|
}
|
|
|
|
func SerializeKafkaID(messageID int64) []byte {
|
|
b := make([]byte, 8)
|
|
common.Endian.PutUint64(b, uint64(messageID))
|
|
return b
|
|
}
|
|
|
|
func DeserializeKafkaID(messageID []byte) int64 {
|
|
return int64(common.Endian.Uint64(messageID))
|
|
}
|