#include "services/metrics/public/cpp/ukm_recorder.h"
#include "base/feature_list.h"
#include "base/functional/bind.h"
#include "build/build_config.h"
#include "net/base/url_util.h"
#include "services/metrics/public/cpp/delegating_ukm_recorder.h"
#include "services/metrics/public/cpp/ukm_entry_builder.h"
#include "services/metrics/public/cpp/ukm_source_id.h"
namespace ukm {
BASE_FEATURE(…);
BASE_FEATURE(…);
UkmRecorder::UkmRecorder() = default;
UkmRecorder::~UkmRecorder() = default;
UkmRecorder* UkmRecorder::Get() { … }
ukm::SourceId UkmRecorder::GetNewSourceID() { … }
ukm::SourceId UkmRecorder::GetSourceIdForPaymentAppFromScope(
base::PassKey<content::PaymentAppProviderUtil>,
const GURL& service_worker_scope) { … }
ukm::SourceId UkmRecorder::GetSourceIdForWebIdentityFromScope(
base::PassKey<content::FedCmMetrics>,
const GURL& provider_url) { … }
ukm::SourceId UkmRecorder::GetSourceIdForRedirectUrl(
base::PassKey<DIPSNavigationHandle>,
const GURL& redirect_url) { … }
ukm::SourceId UkmRecorder::GetSourceIdForDipsSite(
base::PassKey<DIPSServiceImpl>,
const std::string& site) { … }
ukm::SourceId UkmRecorder::GetSourceIdForChromeOSWebsiteURL(
base::PassKey<apps::WebsiteMetrics>,
const GURL& redirect_url) { … }
ukm::SourceId UkmRecorder::GetSourceIdForExtensionUrl(
base::PassKey<extensions::ExtensionMessagePort>,
const GURL& extension_url) { … }
ukm::SourceId UkmRecorder::GetSourceIdForExtensionUrl(
base::PassKey<extensions::ManifestV2ExperimentManager>,
const GURL& extension_url) { … }
ukm::SourceId UkmRecorder::GetSourceIdForNotificationPermission(
base::PassKey<ChromePermissionsClient>,
const GURL& origin) { … }
ukm::SourceId UkmRecorder::GetSourceIdForNotificationEvent(
base::PassKey<PlatformNotificationServiceImpl>,
const GURL& origin) { … }
void UkmRecorder::RecordOtherURL(ukm::SourceIdObj source_id, const GURL& url) { … }
void UkmRecorder::RecordAppURL(ukm::SourceIdObj source_id,
const GURL& url,
const AppType app_type) { … }
ukm::SourceId UkmRecorder::GetSourceIdFromScopeImpl(const GURL& scope_url,
SourceIdType type) { … }
void UkmRecorder::NotifyStartShutdown() { … }
void UkmRecorder::AddObserver(Observer* observer) { … }
void UkmRecorder::RemoveObserver(Observer* observer) { … }
}