1package memberlist 2 3// MergeDelegate is used to involve a client in 4// a potential cluster merge operation. Namely, when 5// a node does a TCP push/pull (as part of a join), 6// the delegate is involved and allowed to cancel the join 7// based on custom logic. The merge delegate is NOT invoked 8// as part of the push-pull anti-entropy. 9type MergeDelegate interface { 10 // NotifyMerge is invoked when a merge could take place. 11 // Provides a list of the nodes known by the peer. If 12 // the return value is non-nil, the merge is canceled. 13 NotifyMerge(peers []*Node) error 14} 15