blob: ddba352983cdc2e81b8ccc1e89caa273b9409325 [file] [log] [blame]
// Copyright 2022 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "dlp/dlp_metrics.h"
#include <utility>
namespace dlp {
DlpMetrics::DlpMetrics() : metrics_lib_(std::make_unique<MetricsLibrary>()) {}
DlpMetrics::~DlpMetrics() = default;
void DlpMetrics::SendBooleanHistogram(const std::string& name,
bool value) const {
metrics_lib_->SendBoolToUMA(name, value);
}
void DlpMetrics::SendInitError(InitError error) const {
metrics_lib_->SendEnumToUMA(kDlpInitErrorHistogram, error);
}
void DlpMetrics::SendFanotifyError(FanotifyError error) const {
metrics_lib_->SendEnumToUMA(kDlpFanotifyErrorHistogram, error);
}
void DlpMetrics::SendDatabaseError(DatabaseError error) const {
metrics_lib_->SendEnumToUMA(kDlpFileDatabaseErrorHistogram, error);
}
void DlpMetrics::SendAdaptorError(AdaptorError error) const {
metrics_lib_->SendEnumToUMA(kDlpAdaptorErrorHistogram, error);
}
void DlpMetrics::SetMetricsLibraryForTesting(
std::unique_ptr<MetricsLibraryInterface> metrics_lib) {
metrics_lib_ = std::move(metrics_lib);
}
}; // namespace dlp