aboutsummaryrefslogtreecommitdiff
path: root/weed/mq/messages/message_buffer_mover.go
blob: fad14056f1f810acfc05dee1eb4bc3ca7858c66c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
package messages

import "fmt"

type MessageBufferMover interface {
	Setup()
	TearDown()
	MoveBuffer(buffer *MessageBuffer) (MessageBufferReference, error) // should be thread-safe
}
type MessageBufferReference struct {
	sequence int64
	fileId   string
}

var _ = MessageBufferMover(&EmptyMover{})

type EmptyMover struct {
}

func (e EmptyMover) Setup() {
}

func (e EmptyMover) TearDown() {
}

func (e EmptyMover) MoveBuffer(buffer *MessageBuffer) (MessageBufferReference, error) {
	println("moving", buffer.sequenceBase)
	return MessageBufferReference{
		sequence: buffer.sequenceBase,
		fileId:   fmt.Sprintf("buffer %d", buffer.sequenceBase),
	}, nil
}