| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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/ntp_snippets/ntp_snippet.h" | 5 #include "components/ntp_snippets/ntp_snippet.h" |
| 6 | 6 |
| 7 #include "base/memory/ptr_util.h" | 7 #include "base/memory/ptr_util.h" |
| 8 #include "base/strings/string_number_conversions.h" | 8 #include "base/strings/string_number_conversions.h" |
| 9 #include "base/strings/stringprintf.h" | 9 #include "base/strings/stringprintf.h" |
| 10 #include "base/values.h" | 10 #include "base/values.h" |
| 11 #include "components/ntp_snippets/content_suggestion.h" | 11 #include "components/ntp_snippets/content_suggestion.h" |
| 12 #include "components/ntp_snippets/content_suggestion_category.h" | 12 #include "components/ntp_snippets/content_suggestion_category.h" |
| 13 #include "components/ntp_snippets/content_suggestions_provider_type.h" | |
| 14 #include "components/ntp_snippets/proto/ntp_snippets.pb.h" | 13 #include "components/ntp_snippets/proto/ntp_snippets.pb.h" |
| 15 | 14 |
| 16 namespace { | 15 namespace { |
| 17 | 16 |
| 18 // dict.Get() specialization for base::Time values | 17 // dict.Get() specialization for base::Time values |
| 19 bool GetTimeValue(const base::DictionaryValue& dict, | 18 bool GetTimeValue(const base::DictionaryValue& dict, |
| 20 const std::string& key, | 19 const std::string& key, |
| 21 base::Time* time) { | 20 base::Time* time) { |
| 22 std::string time_value; | 21 std::string time_value; |
| 23 return dict.GetString(key, &time_value) && | 22 return dict.GetString(key, &time_value) && |
| (...skipping 215 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 239 source_proto->set_url(source.url.spec()); | 238 source_proto->set_url(source.url.spec()); |
| 240 if (!source.publisher_name.empty()) | 239 if (!source.publisher_name.empty()) |
| 241 source_proto->set_publisher_name(source.publisher_name); | 240 source_proto->set_publisher_name(source.publisher_name); |
| 242 if (source.amp_url.is_valid()) | 241 if (source.amp_url.is_valid()) |
| 243 source_proto->set_amp_url(source.amp_url.spec()); | 242 source_proto->set_amp_url(source.amp_url.spec()); |
| 244 } | 243 } |
| 245 | 244 |
| 246 return result; | 245 return result; |
| 247 } | 246 } |
| 248 | 247 |
| 249 std::unique_ptr<ContentSuggestion> NTPSnippet::ToContentSuggestion() const { | 248 std::unique_ptr<ContentSuggestion> NTPSnippet::ToContentSuggestion( |
| 249 const std::string& id) const { |
| 250 std::unique_ptr<ContentSuggestion> result(new ContentSuggestion( | 250 std::unique_ptr<ContentSuggestion> result(new ContentSuggestion( |
| 251 id_, ContentSuggestionsProviderType::ARTICLES, | 251 id, ContentSuggestionCategory::ARTICLE, best_source().url)); |
| 252 ContentSuggestionCategory::ARTICLE, best_source().url)); | |
| 253 result->set_amp_url(best_source().amp_url); | 252 result->set_amp_url(best_source().amp_url); |
| 254 result->set_title(title_); | 253 result->set_title(title_); |
| 255 result->set_snippet_text(snippet_); | 254 result->set_snippet_text(snippet_); |
| 256 result->set_publish_date(publish_date_); | 255 result->set_publish_date(publish_date_); |
| 257 result->set_publisher_name(best_source().publisher_name); | 256 result->set_publisher_name(best_source().publisher_name); |
| 258 result->set_score(score_); | 257 result->set_score(score_); |
| 259 return result; | 258 return result; |
| 260 } | 259 } |
| 261 | 260 |
| 262 // static | 261 // static |
| (...skipping 28 matching lines...) Expand all Loading... |
| 291 best_source_index_ = i; | 290 best_source_index_ = i; |
| 292 if (!source.amp_url.is_empty()) { | 291 if (!source.amp_url.is_empty()) { |
| 293 // This is the best possible source, stop looking. | 292 // This is the best possible source, stop looking. |
| 294 break; | 293 break; |
| 295 } | 294 } |
| 296 } | 295 } |
| 297 } | 296 } |
| 298 } | 297 } |
| 299 | 298 |
| 300 } // namespace ntp_snippets | 299 } // namespace ntp_snippets |
| OLD | NEW |