#include "components/storage_monitor/storage_monitor.h"
#include <memory>
#include <utility>
#include "base/containers/contains.h"
#include "base/logging.h"
#include "base/memory/raw_ptr.h"
#include "components/storage_monitor/removable_storage_observer.h"
#include "components/storage_monitor/transient_device_ids.h"
namespace storage_monitor {
namespace {
StorageMonitor* g_storage_monitor = …;
}
StorageMonitor::Receiver::~Receiver() = default;
class StorageMonitor::ReceiverImpl : public StorageMonitor::Receiver { … };
void StorageMonitor::ReceiverImpl::ProcessAttach(const StorageInfo& info) { … }
void StorageMonitor::ReceiverImpl::ProcessDetach(const std::string& id) { … }
void StorageMonitor::ReceiverImpl::MarkInitialized() { … }
void StorageMonitor::Create() { … }
void StorageMonitor::Destroy() { … }
StorageMonitor* StorageMonitor::GetInstance() { … }
void StorageMonitor::SetStorageMonitorForTesting(
std::unique_ptr<StorageMonitor> storage_monitor) { … }
std::vector<StorageInfo> StorageMonitor::GetAllAvailableStorages() const { … }
void StorageMonitor::EnsureInitialized(base::OnceClosure callback) { … }
bool StorageMonitor::IsInitialized() const { … }
void StorageMonitor::AddObserver(RemovableStorageObserver* obs) { … }
void StorageMonitor::RemoveObserver(
RemovableStorageObserver* obs) { … }
std::string StorageMonitor::GetTransientIdForDeviceId(
const std::string& device_id) { … }
std::string StorageMonitor::GetDeviceIdForTransientId(
const std::string& transient_id) const { … }
void StorageMonitor::EjectDevice(
const std::string& device_id,
base::OnceCallback<void(EjectStatus)> callback) { … }
StorageMonitor::StorageMonitor()
: … { … }
StorageMonitor::~StorageMonitor() = default;
StorageMonitor::Receiver* StorageMonitor::receiver() const { … }
void StorageMonitor::MarkInitialized() { … }
void StorageMonitor::ProcessAttach(const StorageInfo& info) { … }
void StorageMonitor::ProcessDetach(const std::string& id) { … }
}