Exemple #1
0
        public virtual void Dispose()
        {
            InformerModel?.Dispose();
            CatalogModel?.Dispose();
            ExplorerModel?.Dispose();
            EditorModel?.Dispose();

            _modelDisposable.Dispose();
        }
Exemple #2
0
        private IDisposable BindExplorer(IFactory <Target, ExplorerModel> explorerModelFactory)
        {
            var chatSubscription = SubscribeToSelectedChat(chat =>
            {
                ExplorerModel?.Dispose();
                ExplorerModel = explorerModelFactory.Create(chat);
            });

            var aggregateSubscription = SubscribeToSelectedAggregate(aggregate =>
            {
                ExplorerModel?.Dispose();
                ExplorerModel = explorerModelFactory.Create(aggregate);
            });

            return(Disposable.Create(() =>
            {
                chatSubscription.Dispose();
                aggregateSubscription.Dispose();
            }));
        }