seaweedfs/weed/replication/sink/replication_sink.go

23 lines
746 B
Go
Raw Normal View History

2018-09-23 15:40:36 +08:00
package sink
import (
2019-03-16 08:20:24 +08:00
"context"
2018-09-23 15:40:36 +08:00
"github.com/chrislusf/seaweedfs/weed/pb/filer_pb"
"github.com/chrislusf/seaweedfs/weed/replication/source"
2018-10-04 14:36:52 +08:00
"github.com/chrislusf/seaweedfs/weed/util"
2018-09-23 15:40:36 +08:00
)
type ReplicationSink interface {
2018-10-04 14:36:52 +08:00
GetName() string
Initialize(configuration util.Configuration) error
2019-03-16 08:20:24 +08:00
DeleteEntry(ctx context.Context, key string, isDirectory, deleteIncludeChunks bool) error
CreateEntry(ctx context.Context, key string, entry *filer_pb.Entry) error
UpdateEntry(ctx context.Context, key string, oldEntry *filer_pb.Entry, newParentPath string, newEntry *filer_pb.Entry, deleteIncludeChunks bool) (foundExistingEntry bool, err error)
2018-09-23 15:40:36 +08:00
GetSinkToDirectory() string
SetSourceFiler(s *source.FilerSource)
}
2018-10-04 14:36:52 +08:00
var (
Sinks []ReplicationSink
)