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

Side by Side Diff: components/dom_distiller/core/distiller_page.cc

Issue 608583003: Roll dom_distiller_js and add UMA for word count for distilled pages. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Addressed comments from isherman and rolled dom distiller Created 6 years, 2 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
« no previous file with comments | « no previous file | third_party/dom_distiller_js/README.chromium » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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/dom_distiller/core/distiller_page.h" 5 #include "components/dom_distiller/core/distiller_page.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/json/json_writer.h" 8 #include "base/json/json_writer.h"
9 #include "base/logging.h" 9 #include "base/logging.h"
10 #include "base/message_loop/message_loop.h" 10 #include "base/message_loop/message_loop.h"
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after
77 new dom_distiller::proto::DomDistillerResult()); 77 new dom_distiller::proto::DomDistillerResult());
78 bool found_content; 78 bool found_content;
79 if (value->IsType(base::Value::TYPE_NULL)) { 79 if (value->IsType(base::Value::TYPE_NULL)) {
80 found_content = false; 80 found_content = false;
81 } else { 81 } else {
82 found_content = 82 found_content =
83 dom_distiller::proto::json::DomDistillerResult::ReadFromValue( 83 dom_distiller::proto::json::DomDistillerResult::ReadFromValue(
84 value, distiller_result.get()); 84 value, distiller_result.get());
85 if (!found_content) { 85 if (!found_content) {
86 DVLOG(1) << "Unable to parse DomDistillerResult."; 86 DVLOG(1) << "Unable to parse DomDistillerResult.";
87 } else if (distiller_result->has_timing_info()) { 87 } else {
88 const dom_distiller::proto::TimingInfo& timing = 88 if (distiller_result->has_timing_info()) {
89 distiller_result->timing_info(); 89 const dom_distiller::proto::TimingInfo& timing =
90 if (timing.has_markup_parsing_time()) { 90 distiller_result->timing_info();
91 UMA_HISTOGRAM_TIMES( 91 if (timing.has_markup_parsing_time()) {
92 "DomDistiller.Time.MarkupParsing", 92 UMA_HISTOGRAM_TIMES(
93 base::TimeDelta::FromMillisecondsD(timing.markup_parsing_time())); 93 "DomDistiller.Time.MarkupParsing",
94 base::TimeDelta::FromMillisecondsD(timing.markup_parsing_time()));
95 }
96 if (timing.has_document_construction_time()) {
97 UMA_HISTOGRAM_TIMES(
98 "DomDistiller.Time.DocumentConstruction",
99 base::TimeDelta::FromMillisecondsD(
100 timing.document_construction_time()));
101 }
102 if (timing.has_article_processing_time()) {
103 UMA_HISTOGRAM_TIMES(
104 "DomDistiller.Time.ArticleProcessing",
105 base::TimeDelta::FromMillisecondsD(
106 timing.article_processing_time()));
107 }
108 if (timing.has_formatting_time()) {
109 UMA_HISTOGRAM_TIMES(
110 "DomDistiller.Time.Formatting",
111 base::TimeDelta::FromMillisecondsD(timing.formatting_time()));
112 }
113 if (timing.has_total_time()) {
114 UMA_HISTOGRAM_TIMES(
115 "DomDistiller.Time.DistillationTotal",
116 base::TimeDelta::FromMillisecondsD(timing.total_time()));
117 }
94 } 118 }
95 if (timing.has_document_construction_time()) { 119 if (distiller_result->has_statistics_info()) {
96 UMA_HISTOGRAM_TIMES( 120 const dom_distiller::proto::StatisticsInfo& statistics =
97 "DomDistiller.Time.DocumentConstruction", 121 distiller_result->statistics_info();
98 base::TimeDelta::FromMillisecondsD( 122 if (statistics.has_word_count()) {
99 timing.document_construction_time())); 123 UMA_HISTOGRAM_CUSTOM_COUNTS(
100 } 124 "DomDistiller.Statistics.WordCount",
101 if (timing.has_article_processing_time()) { 125 statistics.word_count(),
102 UMA_HISTOGRAM_TIMES( 126 1, 4000, 50);
103 "DomDistiller.Time.ArticleProcessing", 127 }
104 base::TimeDelta::FromMillisecondsD(
105 timing.article_processing_time()));
106 }
107 if (timing.has_formatting_time()) {
108 UMA_HISTOGRAM_TIMES(
109 "DomDistiller.Time.Formatting",
110 base::TimeDelta::FromMillisecondsD(timing.formatting_time()));
111 }
112 if (timing.has_total_time()) {
113 UMA_HISTOGRAM_TIMES(
114 "DomDistiller.Time.DistillationTotal",
115 base::TimeDelta::FromMillisecondsD(timing.total_time()));
116 } 128 }
117 } 129 }
118 } 130 }
119 131
120 base::MessageLoop::current()->PostTask( 132 base::MessageLoop::current()->PostTask(
121 FROM_HERE, 133 FROM_HERE,
122 base::Bind(distiller_page_callback_, 134 base::Bind(distiller_page_callback_,
123 base::Passed(&distiller_result), 135 base::Passed(&distiller_result),
124 found_content)); 136 found_content));
125 } 137 }
126 138
127 } // namespace dom_distiller 139 } // namespace dom_distiller
OLDNEW
« no previous file with comments | « no previous file | third_party/dom_distiller_js/README.chromium » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698