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

Side by Side Diff: components/sync/driver/async_directory_type_controller.cc

Issue 2886933003: Use stricter type checking in UMA_HISTOGRAM_ENUMERATION (Closed)
Patch Set: simplify type checking Created 3 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 unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "components/sync/driver/async_directory_type_controller.h" 5 #include "components/sync/driver/async_directory_type_controller.h"
6 6
7 #include <utility> 7 #include <utility>
8 8
9 #include "base/logging.h" 9 #include "base/logging.h"
10 #include "base/memory/ptr_util.h" 10 #include "base/memory/ptr_util.h"
(...skipping 189 matching lines...) Expand 10 before | Expand all | Expand 10 after
200 // Start failed. 200 // Start failed.
201 StopModels(); 201 StopModels();
202 RecordStartFailure(start_result); 202 RecordStartFailure(start_result);
203 } 203 }
204 204
205 start_callback_.Run(start_result, local_merge_result, syncer_merge_result); 205 start_callback_.Run(start_result, local_merge_result, syncer_merge_result);
206 } 206 }
207 207
208 void AsyncDirectoryTypeController::RecordStartFailure(ConfigureResult result) { 208 void AsyncDirectoryTypeController::RecordStartFailure(ConfigureResult result) {
209 DCHECK(CalledOnValidThread()); 209 DCHECK(CalledOnValidThread());
210 // TODO(wychen): enum uma should be strongly typed. crbug.com/661401
210 UMA_HISTOGRAM_ENUMERATION("Sync.DataTypeStartFailures", 211 UMA_HISTOGRAM_ENUMERATION("Sync.DataTypeStartFailures",
211 ModelTypeToHistogramInt(type()), MODEL_TYPE_COUNT); 212 ModelTypeToHistogramInt(type()),
213 static_cast<int>(MODEL_TYPE_COUNT));
212 #define PER_DATA_TYPE_MACRO(type_str) \ 214 #define PER_DATA_TYPE_MACRO(type_str) \
213 UMA_HISTOGRAM_ENUMERATION("Sync." type_str "ConfigureFailure", result, \ 215 UMA_HISTOGRAM_ENUMERATION("Sync." type_str "ConfigureFailure", result, \
214 MAX_CONFIGURE_RESULT); 216 MAX_CONFIGURE_RESULT);
215 SYNC_DATA_TYPE_HISTOGRAM(type()); 217 SYNC_DATA_TYPE_HISTOGRAM(type());
216 #undef PER_DATA_TYPE_MACRO 218 #undef PER_DATA_TYPE_MACRO
217 } 219 }
218 220
219 void AsyncDirectoryTypeController::DisableImpl(const SyncError& error) { 221 void AsyncDirectoryTypeController::DisableImpl(const SyncError& error) {
220 DCHECK(CalledOnValidThread()); 222 DCHECK(CalledOnValidThread());
221 if (!model_load_callback_.is_null()) { 223 if (!model_load_callback_.is_null()) {
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after
263 std::unique_ptr<DataTypeErrorHandler> 265 std::unique_ptr<DataTypeErrorHandler>
264 AsyncDirectoryTypeController::CreateErrorHandler() { 266 AsyncDirectoryTypeController::CreateErrorHandler() {
265 DCHECK(CalledOnValidThread()); 267 DCHECK(CalledOnValidThread());
266 return base::MakeUnique<DataTypeErrorHandlerImpl>( 268 return base::MakeUnique<DataTypeErrorHandlerImpl>(
267 base::ThreadTaskRunnerHandle::Get(), dump_stack_, 269 base::ThreadTaskRunnerHandle::Get(), dump_stack_,
268 base::Bind(&AsyncDirectoryTypeController::DisableImpl, 270 base::Bind(&AsyncDirectoryTypeController::DisableImpl,
269 base::AsWeakPtr(this))); 271 base::AsWeakPtr(this)));
270 } 272 }
271 273
272 } // namespace syncer 274 } // namespace syncer
OLDNEW
« no previous file with comments | « components/signin/core/browser/signin_metrics.cc ('k') | components/sync/driver/data_type_manager_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698