public AppScopedHaContextProvider(IObservable <HassEvent> hassEventObservable,
                                          EntityStateCache entityStateCache,
                                          EntityAreaCache entityAreaCache,
                                          IHassClient hassClient)
        {
            _entityStateCache = entityStateCache;
            _entityAreaCache  = entityAreaCache;
            _hassClient       = hassClient;

            // Create ScopedObservables for this app
            // This makes sure we will unsubscribe when this ContextProvider is Disposed
            _scopedEventObservable = new ScopedObservable <HassEvent>(hassEventObservable);
            _scopedStateObservable = new ScopedObservable <HassStateChangedEventData>(_entityStateCache.StateAllChanges);
        }
Exemple #2
0
 public CacheManager(EntityAreaCache entityAreaCache, EntityStateCache entityStateCache)
 {
     _entityAreaCache  = entityAreaCache;
     _entityStateCache = entityStateCache;
 }