blob: c6bafc8cf71641e2eca2f9320df4b154608fc2b8 [file] [log] [blame]
// Copyright 2023 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/metrics/debug/structured/structured_metrics_watcher.h"
#include "base/logging.h"
#include "components/metrics/structured/structured_metrics_service.h"
namespace metrics::structured {
StructuredMetricsWatcher::StructuredMetricsWatcher(
StructuredMetricsService* service)
: service_(service) {
Recorder::GetInstance()->AddObserver(this);
}
StructuredMetricsWatcher::~StructuredMetricsWatcher() {
Recorder::GetInstance()->RemoveObserver(this);
}
void StructuredMetricsWatcher::OnEventRecord(const Event& event) {
if (!service_->recording_enabled()) {
return;
}
events_.push_back(event.Clone());
}
void StructuredMetricsWatcher::OnProfileAdded(
const base::FilePath& profile_path) {
/* Do nothing */
}
void StructuredMetricsWatcher::OnReportingStateChanged(bool enabled) {
/* Do nothing */
}
} // namespace metrics::structured