OLD | NEW |
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 // Make sure stdint.h includes SIZE_MAX. (See C89, p259, footnote 221.) | 5 // Make sure stdint.h includes SIZE_MAX. (See C89, p259, footnote 221.) |
6 #ifndef __STDC_LIMIT_MACROS | 6 #ifndef __STDC_LIMIT_MACROS |
7 #define __STDC_LIMIT_MACROS 1 | 7 #define __STDC_LIMIT_MACROS 1 |
8 #endif | 8 #endif |
9 | 9 |
10 #include "components/domain_reliability/config.h" | 10 #include "components/domain_reliability/config.h" |
(...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
86 bool DomainReliabilityConfig::Collector::IsValid() const { | 86 bool DomainReliabilityConfig::Collector::IsValid() const { |
87 return upload_url.is_valid(); | 87 return upload_url.is_valid(); |
88 } | 88 } |
89 | 89 |
90 DomainReliabilityConfig::DomainReliabilityConfig() {} | 90 DomainReliabilityConfig::DomainReliabilityConfig() {} |
91 DomainReliabilityConfig::~DomainReliabilityConfig() {} | 91 DomainReliabilityConfig::~DomainReliabilityConfig() {} |
92 | 92 |
93 // static | 93 // static |
94 scoped_ptr<const DomainReliabilityConfig> DomainReliabilityConfig::FromJSON( | 94 scoped_ptr<const DomainReliabilityConfig> DomainReliabilityConfig::FromJSON( |
95 const base::StringPiece& json) { | 95 const base::StringPiece& json) { |
96 // TODO(vadimt): Remove ScopedTracker below once crbug.com/436671 is fixed. | |
97 tracked_objects::ScopedTracker tracking_profile( | |
98 FROM_HERE_WITH_EXPLICIT_FUNCTION( | |
99 "436671 DomainReliabilityConfig::FromJSON")); | |
100 scoped_ptr<base::Value> value = base::JSONReader::Read(json); | 96 scoped_ptr<base::Value> value = base::JSONReader::Read(json); |
101 base::JSONValueConverter<DomainReliabilityConfig> converter; | 97 base::JSONValueConverter<DomainReliabilityConfig> converter; |
102 scoped_ptr<DomainReliabilityConfig> config(new DomainReliabilityConfig()); | 98 scoped_ptr<DomainReliabilityConfig> config(new DomainReliabilityConfig()); |
103 | 99 |
104 // If we can parse and convert the JSON into a valid config, return that. | 100 // If we can parse and convert the JSON into a valid config, return that. |
105 if (value && converter.Convert(*value, config.get()) && config->IsValid()) | 101 if (value && converter.Convert(*value, config.get()) && config->IsValid()) |
106 return config.Pass(); | 102 return config.Pass(); |
107 return scoped_ptr<const DomainReliabilityConfig>(); | 103 return scoped_ptr<const DomainReliabilityConfig>(); |
108 } | 104 } |
109 | 105 |
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
143 &DomainReliabilityConfig::version); | 139 &DomainReliabilityConfig::version); |
144 converter->RegisterStringField("monitored_domain", | 140 converter->RegisterStringField("monitored_domain", |
145 &DomainReliabilityConfig::domain); | 141 &DomainReliabilityConfig::domain); |
146 converter->RegisterRepeatedMessage("monitored_resources", | 142 converter->RegisterRepeatedMessage("monitored_resources", |
147 &DomainReliabilityConfig::resources); | 143 &DomainReliabilityConfig::resources); |
148 converter->RegisterRepeatedMessage("collectors", | 144 converter->RegisterRepeatedMessage("collectors", |
149 &DomainReliabilityConfig::collectors); | 145 &DomainReliabilityConfig::collectors); |
150 } | 146 } |
151 | 147 |
152 } // namespace domain_reliability | 148 } // namespace domain_reliability |
OLD | NEW |