blob: 7840fe2382012ab1962724f769f5fde3ddaa91ec [file] [log] [blame]
// Copyright 2022 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "components/cast_receiver/browser/public/streaming_config_manager.h"
namespace cast_receiver {
StreamingConfigManager::ConfigObserver::~ConfigObserver() = default;
StreamingConfigManager::StreamingConfigManager() = default;
StreamingConfigManager::~StreamingConfigManager() = default;
void StreamingConfigManager::AddConfigObserver(ConfigObserver& observer) {
observers_.AddObserver(&observer);
}
void StreamingConfigManager::RemoveConfigbserver(ConfigObserver& observer) {
observers_.RemoveObserver(&observer);
}
void StreamingConfigManager::OnStreamingConfigSet(
cast_streaming::ReceiverConfig config) {
config_ = std::move(config);
for (auto& observer : observers_) {
observer.OnStreamingConfigSet(config_.value());
}
}
} // namespace cast_receiver