소스 검색

Message Flags

- prevent direct access
Alexey Kim 1 년 전
부모
커밋
d8cfb3fb33
1개의 변경된 파일12개의 추가작업 그리고 1개의 파일을 삭제
  1. 12 1
      message.go

+ 12 - 1
message.go

@@ -26,11 +26,22 @@ func NewKafkaMessage(src *kafka.Message) *Message {
 	return m
 }
 
+func (m *Message) SetFlag(x uint32) {
+	f := m.bitmap()
+	f.Set(x)
+
+	m.Flags = f.ToBytes()
+}
+
+func (m *Message) HasFlag(x uint32) bool {
+	return m.bitmap().Contains(x)
+}
+
 func (m *Message) SetBitmap(flags bitmap.Bitmap) {
 	m.Flags = flags.ToBytes()
 }
 
-func (m *Message) GetBitmap() *bitmap.Bitmap {
+func (m *Message) bitmap() *bitmap.Bitmap {
 	var flags bitmap.Bitmap
 	if m.Flags != nil {
 		flags = bitmap.FromBytes(m.Flags)