moved the kafka-go project to this repository
This commit is contained in:
@@ -0,0 +1,7 @@
|
||||
package response
|
||||
|
||||
type Message struct {
|
||||
body []byte
|
||||
header V0Header
|
||||
messageSize int32
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
package response
|
||||
|
||||
import "encoding/binary"
|
||||
|
||||
type V0Header struct {
|
||||
Correlation_id uint32
|
||||
}
|
||||
|
||||
func NewHeader(correlation_id uint32) *V0Header {
|
||||
return &V0Header{
|
||||
Correlation_id: correlation_id,
|
||||
}
|
||||
}
|
||||
|
||||
func (h *V0Header) ToBytes() []byte {
|
||||
buf := make([]byte, 4)
|
||||
binary.BigEndian.PutUint32(buf, uint32(h.Correlation_id))
|
||||
return buf
|
||||
}
|
||||
@@ -0,0 +1,28 @@
|
||||
package response
|
||||
|
||||
import (
|
||||
"encoding/binary"
|
||||
)
|
||||
|
||||
type V0Response struct {
|
||||
header V0Header
|
||||
body []byte
|
||||
}
|
||||
|
||||
func NewV0Reponse(correlation_id uint32) *V0Response {
|
||||
return &V0Response{
|
||||
header: V0Header{
|
||||
Correlation_id: correlation_id},
|
||||
body: []byte{},
|
||||
}
|
||||
}
|
||||
|
||||
func (r *V0Response) ToBytes() []byte {
|
||||
header := r.header.ToBytes()
|
||||
length := len(header)
|
||||
buf := make([]byte, length+4)
|
||||
binary.BigEndian.PutUint32(buf[0:4], uint32(length))
|
||||
copy(buf[4:], header)
|
||||
|
||||
return buf
|
||||
}
|
||||
Reference in New Issue
Block a user