Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2478)

Unified Diff: extensions/browser/api/web_request/web_request_api.cc

Issue 2077723002: [Extensions] Short-circuit activity logging if not enabled (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Add Test Created 4 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: extensions/browser/api/web_request/web_request_api.cc
diff --git a/extensions/browser/api/web_request/web_request_api.cc b/extensions/browser/api/web_request/web_request_api.cc
index 986480b7ba2474992d18cc6b9a05bde1730e0fc3..ed9358202c4ddf7085ca8800ec85a5e58ba15871 100644
--- a/extensions/browser/api/web_request/web_request_api.cc
+++ b/extensions/browser/api/web_request/web_request_api.cc
@@ -37,6 +37,7 @@
#include "extensions/browser/api/web_request/web_request_event_details.h"
#include "extensions/browser/api/web_request/web_request_event_router_delegate.h"
#include "extensions/browser/api/web_request/web_request_time_tracker.h"
+#include "extensions/browser/api_activity_monitor.h"
#include "extensions/browser/event_router.h"
#include "extensions/browser/extension_prefs.h"
#include "extensions/browser/extension_registry.h"
@@ -575,10 +576,9 @@ ExtensionWebRequestEventRouter* ExtensionWebRequestEventRouter::GetInstance() {
}
ExtensionWebRequestEventRouter::ExtensionWebRequestEventRouter()
- : request_time_tracker_(new ExtensionWebRequestTimeTracker) {
- web_request_event_router_delegate_.reset(
- ExtensionsAPIClient::Get()->CreateWebRequestEventRouterDelegate());
-}
+ : request_time_tracker_(new ExtensionWebRequestTimeTracker),
+ web_request_event_router_delegate_(
+ ExtensionsAPIClient::Get()->CreateWebRequestEventRouterDelegate()) {}
ExtensionWebRequestEventRouter::~ExtensionWebRequestEventRouter() {
}
@@ -1371,7 +1371,8 @@ void ExtensionWebRequestEventRouter::GetMatchingListenersImpl(
crosses_incognito,
WebRequestPermissions::REQUIRE_HOST_PERMISSION);
if (access != PermissionsData::ACCESS_ALLOWED) {
- if (access == PermissionsData::ACCESS_WITHHELD) {
+ if (access == PermissionsData::ACCESS_WITHHELD &&
+ web_request_event_router_delegate_) {
web_request_event_router_delegate_->NotifyWebRequestWithheld(
render_process_id, render_frame_id, listener.extension_id);
}
@@ -1603,34 +1604,6 @@ std::unique_ptr<base::DictionaryValue> SummarizeResponseDelta(
} // namespace
-void ExtensionWebRequestEventRouter::LogExtensionActivity(
- void* browser_context_id,
- bool is_incognito,
- const std::string& extension_id,
- const GURL& url,
- const std::string& api_call,
- std::unique_ptr<base::DictionaryValue> details) {
- if (!BrowserThread::CurrentlyOn(BrowserThread::UI)) {
- BrowserThread::PostTask(
- BrowserThread::UI,
- FROM_HERE,
- base::Bind(&ExtensionWebRequestEventRouter::LogExtensionActivity,
- base::Unretained(this),
- browser_context_id,
- is_incognito,
- extension_id,
- url,
- api_call,
- base::Passed(&details)));
- } else {
- if (web_request_event_router_delegate_) {
- web_request_event_router_delegate_->LogExtensionActivity(
- reinterpret_cast<content::BrowserContext*>(browser_context_id),
- is_incognito, extension_id, url, api_call, std::move(details));
- }
- }
-}
-
void ExtensionWebRequestEventRouter::DecrementBlockCount(
void* browser_context,
const std::string& extension_id,
@@ -1653,12 +1626,10 @@ void ExtensionWebRequestEventRouter::DecrementBlockCount(
helpers::EventResponseDelta* delta =
CalculateDelta(&blocked_request, response);
- LogExtensionActivity(browser_context,
- blocked_request.is_incognito,
- extension_id,
- blocked_request.request->url(),
- event_name,
- SummarizeResponseDelta(event_name, *delta));
+ activity_monitor::OnWebRequestApiUsed(
+ static_cast<content::BrowserContext*>(browser_context), extension_id,
+ blocked_request.request->url(), blocked_request.is_incognito,
+ event_name, SummarizeResponseDelta(event_name, *delta));
blocked_request.response_deltas.push_back(
linked_ptr<helpers::EventResponseDelta>(delta));

Powered by Google App Engine
This is Rietveld 408576698