blob: f575e165ec5ce3b4614b7ccc63811cc21fb6a47e [file] [log] [blame]
// Copyright 2015 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "ios/chrome/browser/interstitials/ios_chrome_metrics_helper.h"
#include "components/history/core/browser/history_service.h"
#include "components/keyed_service/core/service_access_type.h"
#include "components/rappor/rappor_service.h"
#include "ios/chrome/browser/application_context.h"
#include "ios/chrome/browser/browser_state/chrome_browser_state.h"
#include "ios/chrome/browser/history/history_service_factory.h"
#include "ios/web/public/web_state/web_state.h"
#if !defined(__has_feature) || !__has_feature(objc_arc)
#error "This file requires ARC support."
#endif
IOSChromeMetricsHelper::IOSChromeMetricsHelper(
web::WebState* web_state,
const GURL& request_url,
const security_interstitials::MetricsHelper::ReportDetails report_details)
: security_interstitials::MetricsHelper(
request_url,
report_details,
ios::HistoryServiceFactory::GetForBrowserState(
ios::ChromeBrowserState::FromBrowserState(
web_state->GetBrowserState()),
ServiceAccessType::EXPLICIT_ACCESS),
GetApplicationContext()->GetRapporService()
? GetApplicationContext()->GetRapporService()->AsWeakPtr()
: base::WeakPtr<rappor::RapporService>()) {}
IOSChromeMetricsHelper::~IOSChromeMetricsHelper() {}
void IOSChromeMetricsHelper::RecordExtraUserDecisionMetrics(
security_interstitials::MetricsHelper::Decision decision) {}
void IOSChromeMetricsHelper::RecordExtraUserInteractionMetrics(
security_interstitials::MetricsHelper::Interaction interaction) {}
void IOSChromeMetricsHelper::RecordExtraShutdownMetrics() {}