package source import ( "errors" ) type noopWatcher struct { exit chan struct{} } func (w *noopWatcher) Next() (*ChangeSet, error) { <-w.exit return nil, errors.New("noopWatcher stopped") } func (w *noopWatcher) Stop() error { close(w.exit) return nil } // NewNoopWatcher returns a watcher that blocks on Next() until Stop() is called. func NewNoopWatcher() (Watcher, error) { return &noopWatcher{exit: make(chan struct{})}, nil }