forked from TrueCloudLab/frostfs-node
03b601b594
It uses logger as a notification writer. NATS messaging will be implemented later. Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
18 lines
658 B
Go
18 lines
658 B
Go
package notificator
|
|
|
|
import objectSDKAddress "github.com/nspcc-dev/neofs-sdk-go/object/address"
|
|
|
|
// NotificationSource is a source of object notifications.
|
|
type NotificationSource interface {
|
|
// Iterate must iterate over all notifications for the
|
|
// provided epoch and call handler for all of them.
|
|
Iterate(epoch uint64, handler func(topic string, addr *objectSDKAddress.Address))
|
|
}
|
|
|
|
// NotificationWriter notifies all the subscribers
|
|
// about new object notifications.
|
|
type NotificationWriter interface {
|
|
// Notify must notify about an event generated
|
|
// from an object with a specific topic.
|
|
Notify(topic string, address *objectSDKAddress.Address)
|
|
}
|