private void AddTag(string topic, string tag) { if (string.IsNullOrWhiteSpace(topic)) { return; } if (string.IsNullOrWhiteSpace(tag)) { return; } if (TagValueViewModels.Any(t => t.Tag == tag && t.Topic == topic)) { return; } var tvvm = new TagValueViewModel(tag, topic); TagValueViewModels.Add(tvvm); log.Add($"{DateTime.Now}: Subscribed to item {tag} on topic {topic}"); }
private async void SearchTopicChanged(string oldTopic) { if (!string.IsNullOrWhiteSpace(oldTopic)) { if (!TagValueViewModels.Any(t => t.Topic == oldTopic)) { client.Unsubscribe(oldTopic); log.Add($"{DateTime.Now}: Unsubscribed from topic {oldTopic}"); } } if (!string.IsNullOrWhiteSpace(SearchTopic)) { if (!TagValueViewModels.Any(t => t.Topic == SearchTopic)) { client.Subscribe(SearchTopic); log.Add($"{DateTime.Now}: Subscribed to topic {SearchTopic}"); } } Tags = new ObservableCollection <TagTopicViewModel>(); }