public Task AddObserverAsync(IEntityGrainObserverNotifications observer)
        {
            // TODO: Hack to avoid subscribing the solution grain observer twice
            if (this.observers.Count == 0)
            {
                this.observers.Subscribe(observer);
            }

            return(Task.CompletedTask);
        }
 public Task RemoveObserverAsync(IEntityGrainObserverNotifications observer)
 {
     return(providerGrain.RemoveObserverAsync(observer));
 }
 public Task RemoveObserverAsync(IEntityGrainObserverNotifications observer)
 {
     this.observers.Unsubscribe(observer);
     return(Task.CompletedTask);
 }