summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBenjamin Kalman <kalman@chromium.org>2015-06-25 15:56:20 -0700
committerBenjamin Kalman <kalman@chromium.org>2015-06-25 22:59:07 +0000
commitfbf756f7a9ee229b76eddf1ce3339718aabbc28e (patch)
treed7658e7b2f68d0fa1a917c4b7362955f45c1d347
parent3d3aef50d9af76cf94ac58014c850bcb310c8684 (diff)
downloadchromium_src-fbf756f7a9ee229b76eddf1ce3339718aabbc28e.zip
chromium_src-fbf756f7a9ee229b76eddf1ce3339718aabbc28e.tar.gz
chromium_src-fbf756f7a9ee229b76eddf1ce3339718aabbc28e.tar.bz2
First batch adding real histogram values for extension events.
BUG=503402 R=dmazzoni@chromium.org, isherman@chromium.org, rdevlin.cronin@chromium.org TBR=mtomasz@chromium.org Review URL: https://codereview.chromium.org/1203773006. Cr-Commit-Position: refs/heads/master@{#336289}
-rw-r--r--chrome/browser/apps/ephemeral_app_browsertest.cc5
-rw-r--r--chrome/browser/chromeos/accessibility/accessibility_manager.cc5
-rw-r--r--chrome/browser/chromeos/extensions/dictionary_event_router.cc4
-rw-r--r--chrome/browser/chromeos/extensions/file_manager/event_router.cc49
-rw-r--r--chrome/browser/chromeos/extensions/file_manager/job_event_router.cc1
-rw-r--r--chrome/browser/chromeos/extensions/file_manager/job_event_router.h7
-rw-r--r--chrome/browser/chromeos/extensions/file_manager/job_event_router_unittest.cc3
-rw-r--r--chrome/browser/chromeos/extensions/input_method_event_router.cc2
-rw-r--r--chrome/browser/chromeos/extensions/media_player_event_router.cc23
-rw-r--r--chrome/browser/chromeos/extensions/wallpaper_api.cc5
-rw-r--r--chrome/browser/chromeos/file_manager/file_browser_handlers.cc2
-rw-r--r--chrome/browser/chromeos/file_system_provider/operations/abort.cc2
-rw-r--r--chrome/browser/chromeos/file_system_provider/operations/add_watcher.cc1
-rw-r--r--chrome/browser/chromeos/file_system_provider/operations/close_file.cc1
-rw-r--r--chrome/browser/chromeos/file_system_provider/operations/configure.cc1
-rw-r--r--chrome/browser/chromeos/file_system_provider/operations/copy_entry.cc1
-rw-r--r--chrome/browser/chromeos/file_system_provider/operations/create_directory.cc1
-rw-r--r--chrome/browser/chromeos/file_system_provider/operations/create_file.cc1
-rw-r--r--chrome/browser/chromeos/file_system_provider/operations/delete_entry.cc1
-rw-r--r--chrome/browser/chromeos/file_system_provider/operations/execute_action.cc6
-rw-r--r--chrome/browser/chromeos/file_system_provider/operations/get_actions.cc1
-rw-r--r--chrome/browser/chromeos/file_system_provider/operations/get_metadata.cc1
-rw-r--r--chrome/browser/chromeos/file_system_provider/operations/move_entry.cc1
-rw-r--r--chrome/browser/chromeos/file_system_provider/operations/open_file.cc1
-rw-r--r--chrome/browser/chromeos/file_system_provider/operations/operation.cc5
-rw-r--r--chrome/browser/chromeos/file_system_provider/operations/operation.h6
-rw-r--r--chrome/browser/chromeos/file_system_provider/operations/read_directory.cc1
-rw-r--r--chrome/browser/chromeos/file_system_provider/operations/read_file.cc1
-rw-r--r--chrome/browser/chromeos/file_system_provider/operations/remove_watcher.cc1
-rw-r--r--chrome/browser/chromeos/file_system_provider/operations/truncate.cc1
-rw-r--r--chrome/browser/chromeos/file_system_provider/operations/unmount.cc2
-rw-r--r--chrome/browser/chromeos/file_system_provider/operations/write_file.cc1
-rw-r--r--chrome/browser/chromeos/file_system_provider/service.cc2
-rw-r--r--extensions/browser/extension_event_histogram_value.h4
-rw-r--r--tools/metrics/histograms/histograms.xml4
35 files changed, 101 insertions, 52 deletions
diff --git a/chrome/browser/apps/ephemeral_app_browsertest.cc b/chrome/browser/apps/ephemeral_app_browsertest.cc
index f1682897..063ea4d 100644
--- a/chrome/browser/apps/ephemeral_app_browsertest.cc
+++ b/chrome/browser/apps/ephemeral_app_browsertest.cc
@@ -426,8 +426,9 @@ class EphemeralAppBrowserTest : public EphemeralAppTestBase {
scoped_ptr<base::ListValue> args(new base::ListValue());
args->Append(dummy_alarm.ToValue().release());
- scoped_ptr<Event> event(new Event(
- extensions::events::UNKNOWN, alarms::OnAlarm::kEventName, args.Pass()));
+ scoped_ptr<Event> event(new Event(extensions::events::ALARMS_ON_ALARM,
+ alarms::OnAlarm::kEventName,
+ args.Pass()));
event_router->DispatchEventToExtension(app_id, event.Pass());
}
diff --git a/chrome/browser/chromeos/accessibility/accessibility_manager.cc b/chrome/browser/chromeos/accessibility/accessibility_manager.cc
index 3c33577..279bf3b 100644
--- a/chrome/browser/chromeos/accessibility/accessibility_manager.cc
+++ b/chrome/browser/chromeos/accessibility/accessibility_manager.cc
@@ -1108,8 +1108,9 @@ void AccessibilityManager::PostLoadChromeVox(Profile* profile) {
scoped_ptr<base::ListValue> event_args(new base::ListValue());
scoped_ptr<extensions::Event> event(new extensions::Event(
- extensions::events::UNKNOWN, extensions::api::accessibility_private::
- OnIntroduceChromeVox::kEventName,
+ extensions::events::ACCESSIBILITY_PRIVATE_ON_INTRODUCE_CHROME_VOX,
+ extensions::api::accessibility_private::OnIntroduceChromeVox::
+ kEventName,
event_args.Pass()));
event_router->DispatchEventWithLazyListener(
extension_misc::kChromeVoxExtensionId, event.Pass());
diff --git a/chrome/browser/chromeos/extensions/dictionary_event_router.cc b/chrome/browser/chromeos/extensions/dictionary_event_router.cc
index 579d2ea..8ca8b9c 100644
--- a/chrome/browser/chromeos/extensions/dictionary_event_router.cc
+++ b/chrome/browser/chromeos/extensions/dictionary_event_router.cc
@@ -46,7 +46,7 @@ void ExtensionDictionaryEventRouter::DispatchLoadedEventIfLoaded() {
scoped_ptr<base::ListValue> args(new base::ListValue());
// The router will only send the event to extensions that are listening.
scoped_ptr<extensions::Event> event(new extensions::Event(
- extensions::events::UNKNOWN,
+ extensions::events::INPUT_METHOD_PRIVATE_ON_DICTIONARY_LOADED,
extensions::InputMethodAPI::kOnDictionaryLoaded, args.Pass()));
event->restrict_to_browser_context = context_;
router->BroadcastEvent(event.Pass());
@@ -80,7 +80,7 @@ void ExtensionDictionaryEventRouter::OnCustomDictionaryChanged(
// The router will only send the event to extensions that are listening.
scoped_ptr<extensions::Event> event(new extensions::Event(
- extensions::events::UNKNOWN,
+ extensions::events::INPUT_METHOD_PRIVATE_ON_DICTIONARY_CHANGED,
extensions::InputMethodAPI::kOnDictionaryChanged, args.Pass()));
event->restrict_to_browser_context = context_;
router->BroadcastEvent(event.Pass());
diff --git a/chrome/browser/chromeos/extensions/file_manager/event_router.cc b/chrome/browser/chromeos/extensions/file_manager/event_router.cc
index 28e4592..61e7271 100644
--- a/chrome/browser/chromeos/extensions/file_manager/event_router.cc
+++ b/chrome/browser/chromeos/extensions/file_manager/event_router.cc
@@ -95,11 +95,11 @@ bool IsRecoveryToolRunning(Profile* profile) {
// Sends an event named |event_name| with arguments |event_args| to extensions.
void BroadcastEvent(Profile* profile,
+ extensions::events::HistogramValue histogram_value,
const std::string& event_name,
scoped_ptr<base::ListValue> event_args) {
- extensions::EventRouter::Get(profile)
- ->BroadcastEvent(make_scoped_ptr(new extensions::Event(
- extensions::events::UNKNOWN, event_name, event_args.Pass())));
+ extensions::EventRouter::Get(profile)->BroadcastEvent(make_scoped_ptr(
+ new extensions::Event(histogram_value, event_name, event_args.Pass())));
}
// Sends an event named |event_name| with arguments |event_args| to an extension
@@ -299,6 +299,7 @@ class DeviceEventRouterImpl : public DeviceEventRouter {
event.device_path = device_path;
BroadcastEvent(profile_,
+ extensions::events::FILE_MANAGER_PRIVATE_ON_DEVICE_CHANGED,
file_manager_private::OnDeviceChanged::kEventName,
file_manager_private::OnDeviceChanged::Create(event));
}
@@ -328,9 +329,11 @@ class JobEventRouterImpl : public JobEventRouter {
return file_manager::util::ConvertDrivePathToFileSystemUrl(profile_, path,
id);
}
- void BroadcastEvent(const std::string& event_name,
+ void BroadcastEvent(extensions::events::HistogramValue histogram_value,
+ const std::string& event_name,
scoped_ptr<base::ListValue> event_args) override {
- ::file_manager::BroadcastEvent(profile_, event_name, event_args.Pass());
+ ::file_manager::BroadcastEvent(profile_, histogram_value, event_name,
+ event_args.Pass());
}
private:
@@ -531,10 +534,10 @@ void EventRouter::OnCopyCompleted(int copy_id,
status.error.reset(new std::string(FileErrorToErrorName(error)));
}
- BroadcastEvent(
- profile_,
- file_manager_private::OnCopyProgress::kEventName,
- file_manager_private::OnCopyProgress::Create(copy_id, status));
+ BroadcastEvent(profile_,
+ extensions::events::FILE_MANAGER_PRIVATE_ON_COPY_PROGRESS,
+ file_manager_private::OnCopyProgress::kEventName,
+ file_manager_private::OnCopyProgress::Create(copy_id, status));
}
void EventRouter::OnCopyProgress(
@@ -568,10 +571,10 @@ void EventRouter::OnCopyProgress(
if (!ShouldSendProgressEvent(always, &last_copy_progress_event_))
return;
- BroadcastEvent(
- profile_,
- file_manager_private::OnCopyProgress::kEventName,
- file_manager_private::OnCopyProgress::Create(copy_id, status));
+ BroadcastEvent(profile_,
+ extensions::events::FILE_MANAGER_PRIVATE_ON_COPY_PROGRESS,
+ file_manager_private::OnCopyProgress::kEventName,
+ file_manager_private::OnCopyProgress::Create(copy_id, status));
}
void EventRouter::OnWatcherManagerNotification(
@@ -592,7 +595,8 @@ void EventRouter::DefaultNetworkChanged(const chromeos::NetworkState* network) {
}
BroadcastEvent(
- profile_,
+ profile_, extensions::events::
+ FILE_MANAGER_PRIVATE_ON_DRIVE_CONNECTION_STATUS_CHANGED,
file_manager_private::OnDriveConnectionStatusChanged::kEventName,
file_manager_private::OnDriveConnectionStatusChanged::Create());
}
@@ -604,7 +608,7 @@ void EventRouter::OnFileManagerPrefsChanged() {
}
BroadcastEvent(
- profile_,
+ profile_, extensions::events::FILE_MANAGER_PRIVATE_ON_PREFERENCES_CHANGED,
file_manager_private::OnPreferencesChanged::kEventName,
file_manager_private::OnPreferencesChanged::Create());
}
@@ -693,10 +697,10 @@ void EventRouter::OnDriveSyncError(drive::file_system::DriveSyncErrorType type,
}
event.file_url = util::ConvertDrivePathToFileSystemUrl(
profile_, drive_path, kFileManagerAppId).spec();
- BroadcastEvent(
- profile_,
- file_manager_private::OnDriveSyncError::kEventName,
- file_manager_private::OnDriveSyncError::Create(event));
+ BroadcastEvent(profile_,
+ extensions::events::FILE_MANAGER_PRIVATE_ON_DRIVE_SYNC_ERROR,
+ file_manager_private::OnDriveSyncError::kEventName,
+ file_manager_private::OnDriveSyncError::Create(event));
}
void EventRouter::OnRefreshTokenInvalid() {
@@ -704,7 +708,8 @@ void EventRouter::OnRefreshTokenInvalid() {
// Raise a DriveConnectionStatusChanged event to notify the status offline.
BroadcastEvent(
- profile_,
+ profile_, extensions::events::
+ FILE_MANAGER_PRIVATE_ON_DRIVE_CONNECTION_STATUS_CHANGED,
file_manager_private::OnDriveConnectionStatusChanged::kEventName,
file_manager_private::OnDriveConnectionStatusChanged::Create());
}
@@ -714,7 +719,8 @@ void EventRouter::OnReadyToSendRequests() {
// Raise a DriveConnectionStatusChanged event to notify the status online.
BroadcastEvent(
- profile_,
+ profile_, extensions::events::
+ FILE_MANAGER_PRIVATE_ON_DRIVE_CONNECTION_STATUS_CHANGED,
file_manager_private::OnDriveConnectionStatusChanged::kEventName,
file_manager_private::OnDriveConnectionStatusChanged::Create());
}
@@ -912,6 +918,7 @@ void EventRouter::DispatchMountCompletedEvent(
event.should_notify =
ShouldShowNotificationForVolume(profile_, *device_event_router_, volume);
BroadcastEvent(profile_,
+ extensions::events::FILE_MANAGER_PRIVATE_ON_MOUNT_COMPLETED,
file_manager_private::OnMountCompleted::kEventName,
file_manager_private::OnMountCompleted::Create(event));
}
diff --git a/chrome/browser/chromeos/extensions/file_manager/job_event_router.cc b/chrome/browser/chromeos/extensions/file_manager/job_event_router.cc
index be0b94a..f406dce 100644
--- a/chrome/browser/chromeos/extensions/file_manager/job_event_router.cc
+++ b/chrome/browser/chromeos/extensions/file_manager/job_event_router.cc
@@ -128,6 +128,7 @@ void JobEventRouter::SendDriveFileTransferEvent() {
pending_event_->total = num_total_bytes_;
BroadcastEvent(
+ extensions::events::FILE_MANAGER_PRIVATE_ON_FILE_TRANSFERS_UPDATED,
file_manager_private::OnFileTransfersUpdated::kEventName,
file_manager_private::OnFileTransfersUpdated::Create(*pending_event_));
pending_event_.reset();
diff --git a/chrome/browser/chromeos/extensions/file_manager/job_event_router.h b/chrome/browser/chromeos/extensions/file_manager/job_event_router.h
index e3c8672..2a05de4 100644
--- a/chrome/browser/chromeos/extensions/file_manager/job_event_router.h
+++ b/chrome/browser/chromeos/extensions/file_manager/job_event_router.h
@@ -15,6 +15,7 @@
#include "base/values.h"
#include "chrome/browser/chromeos/drive/job_list.h"
#include "chrome/common/extensions/api/file_manager_private.h"
+#include "extensions/browser/extension_event_histogram_value.h"
#include "url/gurl.h"
namespace file_manager {
@@ -37,8 +38,10 @@ class JobEventRouter : public drive::JobListObserver {
const std::string& id) const = 0;
// Helper method to dispatch events.
- virtual void BroadcastEvent(const std::string& event_name,
- scoped_ptr<base::ListValue> event_args) = 0;
+ virtual void BroadcastEvent(
+ extensions::events::HistogramValue histogram_value,
+ const std::string& event_name,
+ scoped_ptr<base::ListValue> event_args) = 0;
private:
// Request sending transfer event with |job_info| and |state|.
diff --git a/chrome/browser/chromeos/extensions/file_manager/job_event_router_unittest.cc b/chrome/browser/chromeos/extensions/file_manager/job_event_router_unittest.cc
index 2b20986..d3fa509 100644
--- a/chrome/browser/chromeos/extensions/file_manager/job_event_router_unittest.cc
+++ b/chrome/browser/chromeos/extensions/file_manager/job_event_router_unittest.cc
@@ -22,7 +22,8 @@ class JobEventRouterImpl : public JobEventRouter {
return GURL();
}
- void BroadcastEvent(const std::string& event_name,
+ void BroadcastEvent(extensions::events::HistogramValue histogram_value,
+ const std::string& event_name,
scoped_ptr<base::ListValue> event_args) override {
ASSERT_EQ(1u, event_args->GetSize());
const base::DictionaryValue* event;
diff --git a/chrome/browser/chromeos/extensions/input_method_event_router.cc b/chrome/browser/chromeos/extensions/input_method_event_router.cc
index d971861d..f6ad3ac 100644
--- a/chrome/browser/chromeos/extensions/input_method_event_router.cc
+++ b/chrome/browser/chromeos/extensions/input_method_event_router.cc
@@ -48,7 +48,7 @@ void ExtensionInputMethodEventRouter::InputMethodChanged(
// The router will only send the event to extensions that are listening.
scoped_ptr<extensions::Event> event(new extensions::Event(
- extensions::events::UNKNOWN,
+ extensions::events::INPUT_METHOD_PRIVATE_ON_CHANGED,
extensions::InputMethodAPI::kOnInputMethodChanged, args.Pass()));
event->restrict_to_browser_context = context_;
router->BroadcastEvent(event.Pass());
diff --git a/chrome/browser/chromeos/extensions/media_player_event_router.cc b/chrome/browser/chromeos/extensions/media_player_event_router.cc
index a339303..85daba8 100644
--- a/chrome/browser/chromeos/extensions/media_player_event_router.cc
+++ b/chrome/browser/chromeos/extensions/media_player_event_router.cc
@@ -11,16 +11,21 @@
namespace extensions {
-static void BroadcastEvent(content::BrowserContext* context,
- const std::string& event_name) {
+namespace {
+
+void BroadcastEvent(content::BrowserContext* context,
+ events::HistogramValue histogram_value,
+ const std::string& event_name) {
if (context && EventRouter::Get(context)) {
scoped_ptr<base::ListValue> args(new base::ListValue());
- scoped_ptr<extensions::Event> event(new extensions::Event(
- extensions::events::UNKNOWN, event_name, args.Pass()));
+ scoped_ptr<Event> event(
+ new Event(histogram_value, event_name, args.Pass()));
EventRouter::Get(context)->BroadcastEvent(event.Pass());
}
}
+} // namespace
+
MediaPlayerEventRouter::MediaPlayerEventRouter(content::BrowserContext* context)
: browser_context_(context) {}
@@ -28,15 +33,19 @@ MediaPlayerEventRouter::~MediaPlayerEventRouter() {
}
void MediaPlayerEventRouter::NotifyNextTrack() {
- BroadcastEvent(browser_context_, "mediaPlayerPrivate.onNextTrack");
+ BroadcastEvent(browser_context_, events::MEDIA_PLAYER_PRIVATE_ON_NEXT_TRACK,
+ "mediaPlayerPrivate.onNextTrack");
}
void MediaPlayerEventRouter::NotifyPrevTrack() {
- BroadcastEvent(browser_context_, "mediaPlayerPrivate.onPrevTrack");
+ BroadcastEvent(browser_context_, events::MEDIA_PLAYER_PRIVATE_ON_PREV_TRACK,
+ "mediaPlayerPrivate.onPrevTrack");
}
void MediaPlayerEventRouter::NotifyTogglePlayState() {
- BroadcastEvent(browser_context_, "mediaPlayerPrivate.onTogglePlayState");
+ BroadcastEvent(browser_context_,
+ events::MEDIA_PLAYER_PRIVATE_ON_TOGGLE_PLAY_STATE,
+ "mediaPlayerPrivate.onTogglePlayState");
}
} // namespace extensions
diff --git a/chrome/browser/chromeos/extensions/wallpaper_api.cc b/chrome/browser/chromeos/extensions/wallpaper_api.cc
index 20d0fe2..07c1971 100644
--- a/chrome/browser/chromeos/extensions/wallpaper_api.cc
+++ b/chrome/browser/chromeos/extensions/wallpaper_api.cc
@@ -184,8 +184,9 @@ void WallpaperSetWallpaperFunction::OnWallpaperDecoded(
extensions::EventRouter* event_router = extensions::EventRouter::Get(profile);
scoped_ptr<base::ListValue> event_args(new base::ListValue());
scoped_ptr<extensions::Event> event(new extensions::Event(
- extensions::events::UNKNOWN, extensions::api::wallpaper_private::
- OnWallpaperChangedBy3rdParty::kEventName,
+ extensions::events::WALLPAPER_PRIVATE_ON_WALLPAPER_CHANGED_BY_3RD_PARTY,
+ extensions::api::wallpaper_private::OnWallpaperChangedBy3rdParty::
+ kEventName,
event_args.Pass()));
event_router->DispatchEventToExtension(extension_misc::kWallpaperManagerId,
event.Pass());
diff --git a/chrome/browser/chromeos/file_manager/file_browser_handlers.cc b/chrome/browser/chromeos/file_manager/file_browser_handlers.cc
index ad53575..846adbd 100644
--- a/chrome/browser/chromeos/file_manager/file_browser_handlers.cc
+++ b/chrome/browser/chromeos/file_manager/file_browser_handlers.cc
@@ -410,7 +410,7 @@ void FileBrowserHandlerExecutor::SetupPermissionsAndDispatchEvent(
}
scoped_ptr<extensions::Event> event(
- new extensions::Event(extensions::events::UNKNOWN,
+ new extensions::Event(extensions::events::FILE_BROWSER_HANDLER_ON_EXECUTE,
"fileBrowserHandler.onExecute", event_args.Pass()));
event->restrict_to_browser_context = profile_;
router->DispatchEventToExtension(extension_->id(), event.Pass());
diff --git a/chrome/browser/chromeos/file_system_provider/operations/abort.cc b/chrome/browser/chromeos/file_system_provider/operations/abort.cc
index 53e9bbf..15c2301 100644
--- a/chrome/browser/chromeos/file_system_provider/operations/abort.cc
+++ b/chrome/browser/chromeos/file_system_provider/operations/abort.cc
@@ -34,7 +34,7 @@ bool Abort::Execute(int request_id) {
options.operation_request_id = operation_request_id_;
return SendEvent(
- request_id,
+ request_id, extensions::events::FILE_SYSTEM_PROVIDER_ON_ABORT_REQUESTED,
extensions::api::file_system_provider::OnAbortRequested::kEventName,
extensions::api::file_system_provider::OnAbortRequested::Create(options));
}
diff --git a/chrome/browser/chromeos/file_system_provider/operations/add_watcher.cc b/chrome/browser/chromeos/file_system_provider/operations/add_watcher.cc
index e42d74a..92a3306 100644
--- a/chrome/browser/chromeos/file_system_provider/operations/add_watcher.cc
+++ b/chrome/browser/chromeos/file_system_provider/operations/add_watcher.cc
@@ -38,6 +38,7 @@ bool AddWatcher::Execute(int request_id) {
return SendEvent(
request_id,
+ extensions::events::FILE_SYSTEM_PROVIDER_ON_ADD_WATCHER_REQUESTED,
extensions::api::file_system_provider::OnAddWatcherRequested::kEventName,
extensions::api::file_system_provider::OnAddWatcherRequested::Create(
options));
diff --git a/chrome/browser/chromeos/file_system_provider/operations/close_file.cc b/chrome/browser/chromeos/file_system_provider/operations/close_file.cc
index 321fd9c8..0cf436b 100644
--- a/chrome/browser/chromeos/file_system_provider/operations/close_file.cc
+++ b/chrome/browser/chromeos/file_system_provider/operations/close_file.cc
@@ -35,6 +35,7 @@ bool CloseFile::Execute(int request_id) {
return SendEvent(
request_id,
+ extensions::events::FILE_SYSTEM_PROVIDER_ON_CLOSE_FILE_REQUESTED,
extensions::api::file_system_provider::OnCloseFileRequested::kEventName,
extensions::api::file_system_provider::OnCloseFileRequested::Create(
options));
diff --git a/chrome/browser/chromeos/file_system_provider/operations/configure.cc b/chrome/browser/chromeos/file_system_provider/operations/configure.cc
index c2b7d68..3ecadee 100644
--- a/chrome/browser/chromeos/file_system_provider/operations/configure.cc
+++ b/chrome/browser/chromeos/file_system_provider/operations/configure.cc
@@ -29,6 +29,7 @@ bool Configure::Execute(int request_id) {
return SendEvent(
request_id,
+ extensions::events::FILE_SYSTEM_PROVIDER_ON_CONFIGURE_REQUESTED,
extensions::api::file_system_provider::OnConfigureRequested::kEventName,
extensions::api::file_system_provider::OnConfigureRequested::Create(
options));
diff --git a/chrome/browser/chromeos/file_system_provider/operations/copy_entry.cc b/chrome/browser/chromeos/file_system_provider/operations/copy_entry.cc
index 87c227a..f821fe8 100644
--- a/chrome/browser/chromeos/file_system_provider/operations/copy_entry.cc
+++ b/chrome/browser/chromeos/file_system_provider/operations/copy_entry.cc
@@ -41,6 +41,7 @@ bool CopyEntry::Execute(int request_id) {
return SendEvent(
request_id,
+ extensions::events::FILE_SYSTEM_PROVIDER_ON_COPY_ENTRY_REQUESTED,
extensions::api::file_system_provider::OnCopyEntryRequested::kEventName,
extensions::api::file_system_provider::OnCopyEntryRequested::Create(
options));
diff --git a/chrome/browser/chromeos/file_system_provider/operations/create_directory.cc b/chrome/browser/chromeos/file_system_provider/operations/create_directory.cc
index c450893..5ee997f 100644
--- a/chrome/browser/chromeos/file_system_provider/operations/create_directory.cc
+++ b/chrome/browser/chromeos/file_system_provider/operations/create_directory.cc
@@ -42,6 +42,7 @@ bool CreateDirectory::Execute(int request_id) {
return SendEvent(
request_id,
+ extensions::events::FILE_SYSTEM_PROVIDER_ON_CREATE_DIRECTORY_REQUESTED,
extensions::api::file_system_provider::OnCreateDirectoryRequested::
kEventName,
extensions::api::file_system_provider::OnCreateDirectoryRequested::Create(
diff --git a/chrome/browser/chromeos/file_system_provider/operations/create_file.cc b/chrome/browser/chromeos/file_system_provider/operations/create_file.cc
index c2a4953..c8a8e78 100644
--- a/chrome/browser/chromeos/file_system_provider/operations/create_file.cc
+++ b/chrome/browser/chromeos/file_system_provider/operations/create_file.cc
@@ -38,6 +38,7 @@ bool CreateFile::Execute(int request_id) {
return SendEvent(
request_id,
+ extensions::events::FILE_SYSTEM_PROVIDER_ON_CREATE_FILE_REQUESTED,
extensions::api::file_system_provider::OnCreateFileRequested::kEventName,
extensions::api::file_system_provider::OnCreateFileRequested::Create(
options));
diff --git a/chrome/browser/chromeos/file_system_provider/operations/delete_entry.cc b/chrome/browser/chromeos/file_system_provider/operations/delete_entry.cc
index e44c2d1..e1a3c3f 100644
--- a/chrome/browser/chromeos/file_system_provider/operations/delete_entry.cc
+++ b/chrome/browser/chromeos/file_system_provider/operations/delete_entry.cc
@@ -41,6 +41,7 @@ bool DeleteEntry::Execute(int request_id) {
return SendEvent(
request_id,
+ extensions::events::FILE_SYSTEM_PROVIDER_ON_DELETE_ENTRY_REQUESTED,
extensions::api::file_system_provider::OnDeleteEntryRequested::kEventName,
extensions::api::file_system_provider::OnDeleteEntryRequested::Create(
options));
diff --git a/chrome/browser/chromeos/file_system_provider/operations/execute_action.cc b/chrome/browser/chromeos/file_system_provider/operations/execute_action.cc
index 8d626da..8e2bb16 100644
--- a/chrome/browser/chromeos/file_system_provider/operations/execute_action.cc
+++ b/chrome/browser/chromeos/file_system_provider/operations/execute_action.cc
@@ -39,8 +39,10 @@ bool ExecuteAction::Execute(int request_id) {
options.action_id = action_id_;
return SendEvent(
- request_id, extensions::api::file_system_provider::
- OnExecuteActionRequested::kEventName,
+ request_id,
+ extensions::events::FILE_SYSTEM_PROVIDER_ON_EXECUTE_ACTION_REQUESTED,
+ extensions::api::file_system_provider::OnExecuteActionRequested::
+ kEventName,
extensions::api::file_system_provider::OnExecuteActionRequested::Create(
options));
}
diff --git a/chrome/browser/chromeos/file_system_provider/operations/get_actions.cc b/chrome/browser/chromeos/file_system_provider/operations/get_actions.cc
index 9efb837..0f33b27 100644
--- a/chrome/browser/chromeos/file_system_provider/operations/get_actions.cc
+++ b/chrome/browser/chromeos/file_system_provider/operations/get_actions.cc
@@ -59,6 +59,7 @@ bool GetActions::Execute(int request_id) {
return SendEvent(
request_id,
+ extensions::events::FILE_SYSTEM_PROVIDER_ON_GET_ACTIONS_REQUESTED,
extensions::api::file_system_provider::OnGetActionsRequested::kEventName,
extensions::api::file_system_provider::OnGetActionsRequested::Create(
options));
diff --git a/chrome/browser/chromeos/file_system_provider/operations/get_metadata.cc b/chrome/browser/chromeos/file_system_provider/operations/get_metadata.cc
index b67c0eb..f98a145 100644
--- a/chrome/browser/chromeos/file_system_provider/operations/get_metadata.cc
+++ b/chrome/browser/chromeos/file_system_provider/operations/get_metadata.cc
@@ -122,6 +122,7 @@ bool GetMetadata::Execute(int request_id) {
return SendEvent(
request_id,
+ extensions::events::FILE_SYSTEM_PROVIDER_ON_GET_METADATA_REQUESTED,
extensions::api::file_system_provider::OnGetMetadataRequested::kEventName,
extensions::api::file_system_provider::OnGetMetadataRequested::Create(
options));
diff --git a/chrome/browser/chromeos/file_system_provider/operations/move_entry.cc b/chrome/browser/chromeos/file_system_provider/operations/move_entry.cc
index a41cc2c..696e449 100644
--- a/chrome/browser/chromeos/file_system_provider/operations/move_entry.cc
+++ b/chrome/browser/chromeos/file_system_provider/operations/move_entry.cc
@@ -41,6 +41,7 @@ bool MoveEntry::Execute(int request_id) {
return SendEvent(
request_id,
+ extensions::events::FILE_SYSTEM_PROVIDER_ON_MOVE_ENTRY_REQUESTED,
extensions::api::file_system_provider::OnMoveEntryRequested::kEventName,
extensions::api::file_system_provider::OnMoveEntryRequested::Create(
options));
diff --git a/chrome/browser/chromeos/file_system_provider/operations/open_file.cc b/chrome/browser/chromeos/file_system_provider/operations/open_file.cc
index ecd626f..cd31633 100644
--- a/chrome/browser/chromeos/file_system_provider/operations/open_file.cc
+++ b/chrome/browser/chromeos/file_system_provider/operations/open_file.cc
@@ -52,6 +52,7 @@ bool OpenFile::Execute(int request_id) {
return SendEvent(
request_id,
+ extensions::events::FILE_SYSTEM_PROVIDER_ON_OPEN_FILE_REQUESTED,
extensions::api::file_system_provider::OnOpenFileRequested::kEventName,
extensions::api::file_system_provider::OnOpenFileRequested::Create(
options));
diff --git a/chrome/browser/chromeos/file_system_provider/operations/operation.cc b/chrome/browser/chromeos/file_system_provider/operations/operation.cc
index c4d3b11..a573f55 100644
--- a/chrome/browser/chromeos/file_system_provider/operations/operation.cc
+++ b/chrome/browser/chromeos/file_system_provider/operations/operation.cc
@@ -43,10 +43,11 @@ void Operation::SetDispatchEventImplForTesting(
}
bool Operation::SendEvent(int request_id,
+ extensions::events::HistogramValue histogram_value,
const std::string& event_name,
scoped_ptr<base::ListValue> event_args) {
- return dispatch_event_impl_.Run(make_scoped_ptr(new extensions::Event(
- extensions::events::UNKNOWN, event_name, event_args.Pass())));
+ return dispatch_event_impl_.Run(make_scoped_ptr(
+ new extensions::Event(histogram_value, event_name, event_args.Pass())));
}
} // namespace operations
diff --git a/chrome/browser/chromeos/file_system_provider/operations/operation.h b/chrome/browser/chromeos/file_system_provider/operations/operation.h
index 3d9cfcd..491f653 100644
--- a/chrome/browser/chromeos/file_system_provider/operations/operation.h
+++ b/chrome/browser/chromeos/file_system_provider/operations/operation.h
@@ -11,16 +11,17 @@
#include "base/memory/scoped_ptr.h"
#include "chrome/browser/chromeos/file_system_provider/provided_file_system_info.h"
#include "chrome/browser/chromeos/file_system_provider/request_manager.h"
+#include "extensions/browser/extension_event_histogram_value.h"
#include "storage/browser/fileapi/async_file_util.h"
namespace base {
class ListValue;
-} // namespace base
+}
namespace extensions {
struct Event;
class EventRouter;
-} // namespace extensions
+}
namespace chromeos {
namespace file_system_provider {
@@ -53,6 +54,7 @@ class Operation : public RequestManager::HandlerInterface {
// Sends an event to the providing extension. Returns false, if the providing
// extension does not handle the |event_name| event.
bool SendEvent(int request_id,
+ extensions::events::HistogramValue histogram_value,
const std::string& event_name,
scoped_ptr<base::ListValue> event_args);
diff --git a/chrome/browser/chromeos/file_system_provider/operations/read_directory.cc b/chrome/browser/chromeos/file_system_provider/operations/read_directory.cc
index b80e1f6..d9f34c1 100644
--- a/chrome/browser/chromeos/file_system_provider/operations/read_directory.cc
+++ b/chrome/browser/chromeos/file_system_provider/operations/read_directory.cc
@@ -78,6 +78,7 @@ bool ReadDirectory::Execute(int request_id) {
return SendEvent(
request_id,
+ extensions::events::FILE_SYSTEM_PROVIDER_ON_READ_DIRECTORY_REQUESTED,
extensions::api::file_system_provider::OnReadDirectoryRequested::
kEventName,
extensions::api::file_system_provider::OnReadDirectoryRequested::Create(
diff --git a/chrome/browser/chromeos/file_system_provider/operations/read_file.cc b/chrome/browser/chromeos/file_system_provider/operations/read_file.cc
index 20bfa46..db8076a 100644
--- a/chrome/browser/chromeos/file_system_provider/operations/read_file.cc
+++ b/chrome/browser/chromeos/file_system_provider/operations/read_file.cc
@@ -77,6 +77,7 @@ bool ReadFile::Execute(int request_id) {
return SendEvent(
request_id,
+ extensions::events::FILE_SYSTEM_PROVIDER_ON_READ_FILE_REQUESTED,
extensions::api::file_system_provider::OnReadFileRequested::kEventName,
extensions::api::file_system_provider::OnReadFileRequested::Create(
options));
diff --git a/chrome/browser/chromeos/file_system_provider/operations/remove_watcher.cc b/chrome/browser/chromeos/file_system_provider/operations/remove_watcher.cc
index 1e4e142..be79404 100644
--- a/chrome/browser/chromeos/file_system_provider/operations/remove_watcher.cc
+++ b/chrome/browser/chromeos/file_system_provider/operations/remove_watcher.cc
@@ -39,6 +39,7 @@ bool RemoveWatcher::Execute(int request_id) {
return SendEvent(
request_id,
+ extensions::events::FILE_SYSTEM_PROVIDER_ON_REMOVE_WATCHER_REQUESTED,
extensions::api::file_system_provider::OnRemoveWatcherRequested::
kEventName,
extensions::api::file_system_provider::OnRemoveWatcherRequested::Create(
diff --git a/chrome/browser/chromeos/file_system_provider/operations/truncate.cc b/chrome/browser/chromeos/file_system_provider/operations/truncate.cc
index cd5cdcf..38b82fc 100644
--- a/chrome/browser/chromeos/file_system_provider/operations/truncate.cc
+++ b/chrome/browser/chromeos/file_system_provider/operations/truncate.cc
@@ -41,6 +41,7 @@ bool Truncate::Execute(int request_id) {
return SendEvent(
request_id,
+ extensions::events::FILE_SYSTEM_PROVIDER_ON_TRUNCATE_REQUESTED,
extensions::api::file_system_provider::OnTruncateRequested::kEventName,
extensions::api::file_system_provider::OnTruncateRequested::Create(
options));
diff --git a/chrome/browser/chromeos/file_system_provider/operations/unmount.cc b/chrome/browser/chromeos/file_system_provider/operations/unmount.cc
index c40f969..92c0155 100644
--- a/chrome/browser/chromeos/file_system_provider/operations/unmount.cc
+++ b/chrome/browser/chromeos/file_system_provider/operations/unmount.cc
@@ -28,7 +28,7 @@ bool Unmount::Execute(int request_id) {
options.request_id = request_id;
return SendEvent(
- request_id,
+ request_id, extensions::events::FILE_SYSTEM_PROVIDER_ON_UNMOUNT_REQUESTED,
extensions::api::file_system_provider::OnUnmountRequested::kEventName,
extensions::api::file_system_provider::OnUnmountRequested::Create(
options));
diff --git a/chrome/browser/chromeos/file_system_provider/operations/write_file.cc b/chrome/browser/chromeos/file_system_provider/operations/write_file.cc
index 766e9cd..c1bf23b1 100644
--- a/chrome/browser/chromeos/file_system_provider/operations/write_file.cc
+++ b/chrome/browser/chromeos/file_system_provider/operations/write_file.cc
@@ -57,6 +57,7 @@ bool WriteFile::Execute(int request_id) {
return SendEvent(
request_id,
+ extensions::events::FILE_SYSTEM_PROVIDER_ON_WRITE_FILE_REQUESTED,
extensions::api::file_system_provider::OnWriteFileRequested::kEventName,
event_args.Pass());
}
diff --git a/chrome/browser/chromeos/file_system_provider/service.cc b/chrome/browser/chromeos/file_system_provider/service.cc
index 41083d7..88e3764 100644
--- a/chrome/browser/chromeos/file_system_provider/service.cc
+++ b/chrome/browser/chromeos/file_system_provider/service.cc
@@ -279,7 +279,7 @@ bool Service::RequestMount(const std::string& extension_id) {
event_router->DispatchEventToExtension(
extension_id,
make_scoped_ptr(new extensions::Event(
- extensions::events::UNKNOWN,
+ extensions::events::FILE_SYSTEM_PROVIDER_ON_MOUNT_REQUESTED,
extensions::api::file_system_provider::OnMountRequested::kEventName,
scoped_ptr<base::ListValue>(new base::ListValue()))));
diff --git a/extensions/browser/extension_event_histogram_value.h b/extensions/browser/extension_event_histogram_value.h
index 55944f6..3375bfd 100644
--- a/extensions/browser/extension_event_histogram_value.h
+++ b/extensions/browser/extension_event_histogram_value.h
@@ -299,7 +299,7 @@ enum HistogramValue {
VPN_PROVIDER_ON_PACKET_RECEIVED,
VPN_PROVIDER_ON_PLATFORM_MESSAGE,
VPN_PROVIDER_ON_UIEVENT,
- WALLPAPER_PRIVATE_ON_WALLPAPER_CHANGED_BY3RD_PARTY,
+ WALLPAPER_PRIVATE_ON_WALLPAPER_CHANGED_BY_3RD_PARTY,
WEB_NAVIGATION_ON_BEFORE_NAVIGATE,
WEB_NAVIGATION_ON_COMMITTED,
WEB_NAVIGATION_ON_COMPLETED,
@@ -342,6 +342,8 @@ enum HistogramValue {
WINDOWS_ON_CREATED,
WINDOWS_ON_FOCUS_CHANGED,
WINDOWS_ON_REMOVED,
+ FILE_SYSTEM_PROVIDER_ON_EXECUTE_ACTION_REQUESTED,
+ FILE_SYSTEM_PROVIDER_ON_GET_ACTIONS_REQUESTED,
// Last entry: Add new entries above, then run:
// python tools/metrics/histograms/update_extension_histograms.py
ENUM_BOUNDARY
diff --git a/tools/metrics/histograms/histograms.xml b/tools/metrics/histograms/histograms.xml
index 2aad153..214fcde 100644
--- a/tools/metrics/histograms/histograms.xml
+++ b/tools/metrics/histograms/histograms.xml
@@ -54053,7 +54053,7 @@ http://cs/file:chrome/histograms.xml - but prefer this file for new entries.
<int value="278" label="VPN_PROVIDER_ON_PACKET_RECEIVED"/>
<int value="279" label="VPN_PROVIDER_ON_PLATFORM_MESSAGE"/>
<int value="280" label="VPN_PROVIDER_ON_UIEVENT"/>
- <int value="281" label="WALLPAPER_PRIVATE_ON_WALLPAPER_CHANGED_BY3RD_PARTY"/>
+ <int value="281" label="WALLPAPER_PRIVATE_ON_WALLPAPER_CHANGED_BY_3RD_PARTY"/>
<int value="282" label="WEB_NAVIGATION_ON_BEFORE_NAVIGATE"/>
<int value="283" label="WEB_NAVIGATION_ON_COMMITTED"/>
<int value="284" label="WEB_NAVIGATION_ON_COMPLETED"/>
@@ -54096,6 +54096,8 @@ http://cs/file:chrome/histograms.xml - but prefer this file for new entries.
<int value="321" label="WINDOWS_ON_CREATED"/>
<int value="322" label="WINDOWS_ON_FOCUS_CHANGED"/>
<int value="323" label="WINDOWS_ON_REMOVED"/>
+ <int value="324" label="FILE_SYSTEM_PROVIDER_ON_EXECUTE_ACTION_REQUESTED"/>
+ <int value="325" label="FILE_SYSTEM_PROVIDER_ON_GET_ACTIONS_REQUESTED"/>
</enum>
<enum name="ExtensionFileWriteResult" type="int">