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

Unified Diff: media/midi/midi_manager.cc

Issue 1217853007: Web MIDI: add a new UMA entry for the final result code (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: review #9 Created 5 years, 5 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: media/midi/midi_manager.cc
diff --git a/media/midi/midi_manager.cc b/media/midi/midi_manager.cc
index 4fc5b2364e9da9918d853b6cd657fc5e4e98cd5a..967f22ba1a290b263144aa5e7858029095230ce6 100644
--- a/media/midi/midi_manager.cc
+++ b/media/midi/midi_manager.cc
@@ -6,17 +6,23 @@
#include "base/bind.h"
#include "base/message_loop/message_loop.h"
+#include "base/metrics/histogram_macros.h"
#include "base/trace_event/trace_event.h"
namespace media {
namespace midi {
+namespace {
+const char kMidiResultOnShutdown[] = "Midi.ResultOnShutdown";
Alexei Svitkine (slow) 2015/07/09 17:11:27 Nit: If it's only used in one place, it's fine to
Takashi Toyoshima 2015/07/09 17:43:30 I prefer to use const variable to represent a magi
+}; // namespace
+
MidiManager::MidiManager()
- : initialized_(false),
- result_(MIDI_NOT_SUPPORTED) {
+ : initialized_(false), result_(Result::NOT_INITIALIZED) {
}
MidiManager::~MidiManager() {
+ UMA_HISTOGRAM_ENUMERATION(kMidiResultOnShutdown, static_cast<int>(result_),
+ static_cast<int>(Result::MAX));
}
#if !defined(OS_MACOSX) && !defined(OS_WIN) && \
@@ -64,7 +70,7 @@ void MidiManager::StartSession(MidiManagerClient* client) {
}
if (too_many_pending_clients_exist) {
// Return an error immediately if there are too many requests.
- client->CompleteStartSession(MIDI_INITIALIZATION_ERROR);
+ client->CompleteStartSession(Result::INITIALIZATION_ERROR);
return;
}
// CompleteInitialization() will be called asynchronously when platform
@@ -74,10 +80,10 @@ void MidiManager::StartSession(MidiManagerClient* client) {
// Platform dependent initialization was already finished for previously
// initialized clients.
- MidiResult result;
+ Result result;
{
base::AutoLock auto_lock(lock_);
- if (result_ == MIDI_OK) {
+ if (result_ == Result::OK) {
AddInitialPorts(client);
clients_.insert(client);
}
@@ -111,10 +117,10 @@ void MidiManager::DispatchSendMidiData(MidiManagerClient* client,
}
void MidiManager::StartInitialization() {
- CompleteInitialization(MIDI_NOT_SUPPORTED);
+ CompleteInitialization(Result::NOT_SUPPORTED);
}
-void MidiManager::CompleteInitialization(MidiResult result) {
+void MidiManager::CompleteInitialization(Result result) {
DCHECK(session_thread_runner_.get());
// It is safe to post a task to the IO thread from here because the IO thread
// should have stopped if the MidiManager is going to be destructed.
@@ -166,7 +172,7 @@ void MidiManager::ReceiveMidiData(
client->ReceiveMidiData(port_index, data, length, timestamp);
}
-void MidiManager::CompleteInitializationInternal(MidiResult result) {
+void MidiManager::CompleteInitializationInternal(Result result) {
TRACE_EVENT0("midi", "MidiManager::CompleteInitialization");
base::AutoLock auto_lock(lock_);
@@ -176,7 +182,7 @@ void MidiManager::CompleteInitializationInternal(MidiResult result) {
result_ = result;
for (auto client : pending_clients_) {
- if (result_ == MIDI_OK) {
+ if (result_ == Result::OK) {
AddInitialPorts(client);
clients_.insert(client);
}

Powered by Google App Engine
This is Rietveld 408576698