layer1: add namespace subscriber adapter step 19
This commit is contained in:
@@ -14,6 +14,38 @@ type NamespaceSubscriber interface {
|
||||
OnNamespaceResync(ctx context.Context, record NamespaceRecord) error
|
||||
}
|
||||
|
||||
type NamespaceSubscriberFuncs struct {
|
||||
SubscriberName string
|
||||
AddFunc func(ctx context.Context, record NamespaceRecord) error
|
||||
RemoveFunc func(ctx context.Context, record NamespaceRecord) error
|
||||
ResyncFunc func(ctx context.Context, record NamespaceRecord) error
|
||||
}
|
||||
|
||||
func (s NamespaceSubscriberFuncs) Name() string {
|
||||
return s.SubscriberName
|
||||
}
|
||||
|
||||
func (s NamespaceSubscriberFuncs) OnNamespaceAdd(ctx context.Context, record NamespaceRecord) error {
|
||||
if s.AddFunc == nil {
|
||||
return nil
|
||||
}
|
||||
return s.AddFunc(ctx, record)
|
||||
}
|
||||
|
||||
func (s NamespaceSubscriberFuncs) OnNamespaceRemove(ctx context.Context, record NamespaceRecord) error {
|
||||
if s.RemoveFunc == nil {
|
||||
return nil
|
||||
}
|
||||
return s.RemoveFunc(ctx, record)
|
||||
}
|
||||
|
||||
func (s NamespaceSubscriberFuncs) OnNamespaceResync(ctx context.Context, record NamespaceRecord) error {
|
||||
if s.ResyncFunc == nil {
|
||||
return nil
|
||||
}
|
||||
return s.ResyncFunc(ctx, record)
|
||||
}
|
||||
|
||||
type NamespaceManager interface {
|
||||
Snapshot() []string
|
||||
SnapshotRecords() []NamespaceRecord
|
||||
|
||||
Reference in New Issue
Block a user