private async Task OnFooChange(WatchEventType type, Foo item) { switch (type) { case WatchEventType.Added: await OnFooAdded(item); _foos.Add(item); return; case WatchEventType.Modified: await OnFooUpdated(item); _foos.Update(item); return; case WatchEventType.Deleted: await OnFooDeleted(item); _foos.Remove(item); return; } ; }